通知
FRVR.notifications 在同一个命名空间下处理两件不同的事:
- 预定的远程消息 —— 由服务器在未来某个时间向这个玩家投递推送(Facebook 上是聊天机器人消息)。
- 本地通知 —— 应用在后台时,设备在 N 秒后弹一条通知。
需要用户同意 —— 很多渠道要求玩家显式 opt-in 之后才能预约:
安排一条远程消息
Section titled “安排一条远程消息”当玩家通过这条通知进入游戏时,buttons[].payload 会出现在 入口 数据里。
安排一条本地通知
Section titled “安排一条本地通知”适合短时提醒,例如「30 分钟后你的体力满了」:
用同一个 code 再次安排,会替换之前那条通知。
不是每个渠道都有本地通知。supportsLocalNotifications() 同步返回,且不会向玩家弹任何提示,所以可以在加载通知相关资源之前先检查:
它不反映权限。通知最终会不会显示,仍由 canScheduleMessages() 决定。
取消本地通知
Section titled “取消本地通知”两个方法在任何地方调用都是安全的。如果这个 code 从未安排过、已经触发,或渠道没有本地通知,它们什么都不做。
API 摘要
Section titled “API 摘要”| 方法 | 作用 |
|---|---|
canScheduleMessages() | 这个玩家能否收到通知? |
subscribeScheduleMessages() | 请求玩家订阅。玩家同意则 resolve true。 |
scheduleMessage(params) | 安排一条远程消息。 |
supportsLocalNotifications() | 渠道是否有本地通知?同步返回。 |
scheduleLocalNotification(code, title, text, seconds) | 安排一条本地通知。 |
unscheduleLocalNotification(code) | 取消一条待发的本地通知。 |
cancelAllLocalNotifications() | 取消所有待发的本地通知。 |
通知:可用性 + 订阅
loading SDK…