N0u*_*0un 5 android push-notification ios firebase firebase-cloud-messaging
我正在使用 Firebase Cloud Messaging 在我的 Android 和 iOS 应用程序中发送数据有效负载和显示通知。我正在将它集成到我的 iOS 应用程序中,并且遇到了一件奇怪的事情。
我的通知服务器只发送数据消息(我的意思是包含“数据”字段而没有“通知”字段的 JSON 消息)。在我的 Android 应用程序中,这不是问题,因为即使我的应用程序在我的Service
实现中处于后台,我也会收到消息,并且我手动构建了显示的通知。但是在 iOS 的情况下,当我的应用程序在后台执行相同操作时,我如何接收消息?我的意思是如果我在我的请求中添加一个“通知”字段,我会在我的屏幕上看到通知弹出(当应用程序处于后台时)并且我可以在我的应用程序处于单击状态时获得数据(位于“数据”字段中)前景。
但是当我的应用程序在后台手动显示通知时,我可以拥有数据吗?
显示通知的内容应该在应用程序端而不是服务器端构建,因为服务器没有足够的信息,这就是为什么我不能在我的有效负载消息中发送“通知”字段。
谢谢
编辑:我使用这个链接解决了(部分)这个问题。不久,我在后台模式下启用了后台获取和远程通知(并添加到有效负载中)。然后我可以处理接收到的数据但现在它仍然是一件事:当我的应用程序被杀死时如何使其工作?content_available : true
didReceiveRemoteNotification:
编辑 2:我发现了一些可能是这样的东西:那个. 修改远程通知的有效负载意味着在显示之前处理传入的通知。我会尽力。
编辑 3: Firebase 不支持使我在EDIT 2 中找到的解决方案所需的可变内容键。关于那个的讨论是here。所以......有什么想法吗?
2014 年 2 月 16 日,Firebase 添加了对“mutable-content”密钥的合规性。这样就解决了我的问题,我想也解决了很多人的问题。
个人想法:
我认为这个功能晚了 6 个月实在是太多了。我希望未来的版本能够与 iOS(以及 Android)版本保持同步。
归档时间: |
|
查看次数: |
3106 次 |
最近记录: |