Android 移动应用程序实时数据可用性推送通知系统的可靠性如何?

Android 移动应用程序实时数据可用性推送通知系统的可靠性如何?,android,ios,apple-push-notifications,google-cloud-messaging,Android,Ios,Apple Push Notifications,Google Cloud Messaging,我正在创建一个android+ios社交应用程序,同时使用苹果推送通知系统和谷歌云消息。我在应用程序运行和未运行时都使用推送通知。在应用程序运行期间,我没有使用任何web套接字,因此通知一直通过APN和gcm推送。我知道两者都不是百分之百可靠的,这就是我困惑的地方。facebook、instagram、snapchat和其他应用程序如何确保始终发送通知。他们是否在应用程序运行时使用WebSocket,在应用程序未运行时使用apns/gcm?我如何确保像“朋友请求”这样的事情总是得到通知?或者,我

我正在创建一个android+ios社交应用程序,同时使用苹果推送通知系统和谷歌云消息。我在应用程序运行和未运行时都使用推送通知。在应用程序运行期间,我没有使用任何web套接字,因此通知一直通过APN和gcm推送。我知道两者都不是百分之百可靠的,这就是我困惑的地方。facebook、instagram、snapchat和其他应用程序如何确保始终发送通知。他们是否在应用程序运行时使用WebSocket,在应用程序未运行时使用apns/gcm?我如何确保像“朋友请求”这样的事情总是得到通知?或者,我应该时不时点击服务器以保持应用程序的更新,以防它丢失任何本应像“好友请求”一样推送的信息吗?

我建议的唯一选项是城市飞艇,它们有一个足够可靠的API,你可以实现你在这里谈论的内容。没有太多好的解决方案,除非您决定为iOS和Android编写自己的服务器,并在内部接收通知。

您可能知道,iOS的APNS和Android的GCM会收到“真正”推送通知。由于这种情况,您的信息的传递永远无法得到保证。例如,从苹果的文档中:


tl;dr认为推送通知是“尽最大努力”的,并不能保证。不管怎样,除非你想建造自己的飞船,否则你必须使用像城市飞艇这样的供应商,但是有最好的使用案例。例如,不要发送给高度细分的受众,而是向他们的API发出一个简单的请求,以加快发送时间并希望获得更多的保证

我不会尝试太多,facebook的追随者。我的facebook通知非常糟糕。根据我对商业产品的体验,谷歌的通知很糟糕,苹果的通知很糟糕。也没什么好推荐的;)对于Android,考虑到GCM/FCM的一种替代方案,它大大提高了通知速度和可靠性(完全公开-我创建了Puxy)。城市飞艇使用FixBooY消息在幕后被可靠性问题困扰: