没有互联网连接时使用 FCM 发送推送通知

Posted

技术标签:

【中文标题】没有互联网连接时使用 FCM 发送推送通知【英文标题】:Send push notification using FCM when there is not internet connection 【发布时间】:2017-08-11 12:23:26 【问题描述】:

我使用 Firebase 云消息传递 (FCM) 向各种 android 智能手机发送推送通知。当智能手机连接互联网时,一切正常。但如果智能手机没有互联网连接,通知就会丢失。

我的问题是,有没有办法在智能手机恢复互联网连接时发送通知?

【问题讨论】:

【参考方案1】:

但如果智能手机没有互联网连接,通知就会丢失。

那不是真的。根据collapse_key 设置,当目标设备没有互联网连接时,消息会被存储以供以后传送。

请参阅lifetime of a message docs。

如果设备未连接到 FCM,则会存储消息,直到建立连接(再次遵守折叠密钥规则)。

另请参阅collapsible and non collapsible messages 并检查collapse_key 设置选项。

【讨论】:

我解决了在通知的 JSON 正文中设置 "time_to_live": x 秒的问题。谢谢! "time_to_live" 还为我解决了以下问题:我定期发送推送通知,但在某些时候,我不再收到它们,或者经过很长时间的延迟。在通知消息中添加android: ttl: 20 修复它。【参考方案2】:

我认为您可以在 Fire-base 控制台中设置通知过期。当设备在此范围内获得互联网连接时,它会收到通知。在我看来,移动设备中没有设置。

【讨论】:

以上是关于没有互联网连接时使用 FCM 发送推送通知的主要内容,如果未能解决你的问题,请参考以下文章

向 FCM 服务器发送推送通知不起作用

FCM 网络推送通知 Google Analytics

Firebase FCM 推送通知停止工作 iOS 11.1.1

FCM 推送通知问题:“错误”:“未注册”

如何使用 FCM 向我的数据库中的用户发送推送通知?安卓

通过 FCM 发送时未收到推送通知,但在 IOS 上通过 APN 发送时收到