App Inventor 2 推送通知教程

覆盖:极光推送、Firebase Cloud Messaging、离线消息、推送统计。

一、推送方案对比

方案免费额优点缺点
极光推送10万/天国内速度快、文档完善需要备案域名
FCM无限制Google官方、免费国内需要翻墙
个推10万/天国内速度快收费较高
推荐:极光推送(国内首选)

二、极光推送接入

2.1 注册极光账号

  1. 访问 https://www.jiguang.cn 注册账号
  2. 创建应用,获取 AppKey 和 Master Secret
  3. 在应用设置中启用推送

2.2 配置 AndroidManifest

在App Inventor打包时,需要在扩展设置中添加:
  • 权限:INTERNET、WAKE_LOCK、RECEIVE_BOOT_COMPLETED
  • 服务:极光推送后台Service

2.3 代码块(使用扩展)

// 初始化极光推送
当 Screen1.初始化 时
  调用 极光推送1.初始化("你的AppKey", "你的Master Secret")
  调用 极光推送1.设置通知图标("icon")

// 接收推送
当 极光推送1.收到消息 时(标题, 内容, 额外数据)
  设置 标签_通知标题.文本 = 标题
  设置 标签_通知内容.文本 = 内容
  
  // 处理额外数据
  如果 额外数据 ≠ "" 则
    初始化局部变量 数据 = 调用 字典.JSON转字典(额外数据)
    设置 标签_额外.文本 = 获取键的值(数据, "type", "")

// 点击通知打开App
当 极光推送1.通知被点击 时(标题, 内容)
  // 根据通知内容跳转到对应页面
  如果 在文本中查找(内容, "订单") > 0 则
    调用 打开另一屏幕("OrderScreen")

三、别名与标签

3.1 设置别名

别名 = 用户ID,一个用户只能绑定一个别名,用于精准推送
// 登录后设置别名
当 按钮_登录.被点击 时(完成后)
  调用 极光推送1.设置别名(文本输入框_用户名.文本)

// 退出时解绑
当 按钮_退出.被点击 时
  调用 极光推送1.删除别名()

3.2 设置标签

标签 = 用户属性,一个用户可以绑定多个标签,用于分群推送
// 设置用户标签
调用 极光推送1.设置标签(创建列表("VIP", "活跃用户", "北京"))

四、推送高级功能

4.1 定时推送

// 设置定时推送(24小时后)
初始化局部变量 推送时间 = 调用 计时器1.获取毫秒数(调用 计时器1.现在) + 24 * 60 * 60 * 1000

调用 极光推送1.发送定时推送(
  "这是定时推送标题",
  "24小时后将收到这条消息",
  推送时间
)

4.2 消息类型

类型说明使用场景
通知系统通知栏提醒、公告
自定义消息应用内消息业务逻辑处理
// 发送自定义消息(不显示通知栏)
调用 极光推送1.发送自定义消息(
  "cmd_order",
  创建字典(
    键值对("order_id", "12345"),
    键值对("status", "已发货")
  )
)

五、常见问题

Q1:收不到推送?

  • 检查网络权限是否配置
  • 检查AppKey是否正确
  • 检查设备是否离线(离线消息有延迟)

Q2:iOS收不到?

  • iOS需要配置APNs证书
  • 检查证书是否过期
  • 生产环境需要上传p12证书

Q3:推送点击如何跳转?

在”通知被点击”事件中,根据extra数据或content判断跳转逻辑

参考资料


文档版本:2026.03 | 作者:App Inventor 2 中文网 www.fun123.cn

参考资料与版权声明

原文来源

版权声明

本文档基于 MIT App Inventor 官方文档及社区资源整理,版权归原作者所有:
  • MIT App Inventor 官方文档采用 CC BY-SA 4.0 授权
  • MIT App Inventor Community 帖子版权归原作者所有
本文档由 ai2claw 🐝 整理,仅供学习参考,如有侵权请联系删除。