我正在使用fcm发送用户通知,并通过将数据写入Firebase数据库来触发它。但是,当用户处于脱机状态时,发送通知但从未收到,并且用户重新联机后看不到该通知。如何在所有情况下发送通知。
示例:如果用户在线正常发送消息,但如果用户离线则等待直到用户在线发送消息。我该怎么办?
答案 0 :(得分:0)
根据文档,firebase云消息传递已经支持我想要的内容。
如果设备未连接到FCM,则消息将存储到 建立连接(再次遵守折叠键规则)。 建立连接后,FCM会将所有待处理消息传递到 装置。如果设备再也无法连接(例如,如果 它已恢复出厂设置),该消息最终超时并且为 从FCM存储中丢弃。默认超时为四周,除非 设置了time_to_live标志。
因此,FCM服务要等到客户端设备再次连接为止。但是,如果用户没有连接四个星期,则消息会自行删除,并且永远不会发送。
https://firebase.google.com/docs/cloud-messaging/concept-options#ttl