我开发了一个应用程序,并使用GCM进行推送通知。但在我的应用程序中,有时会收到通知,有时会延迟接收,有时不会收到通知。
GCM(谷歌云消息)这不是一个完美的工作解决方案,当第三方服务器向谷歌服务器发送推送通知请求时。之后,谷歌服务器负责向手机发送推送通知。大多数时候谷歌服务器会立即发送通知。有时只是因为网络流量而导致延迟。
假设谷歌服务器向设备发送了通知,现在开发人员负责处理请求并在通知中显示通知。
故障案例(设备侧):
1) 无网络-如果谷歌服务器向您的设备发送了通知2) 慢速网络3) 处理消息的错误方式
根据您上面的解释,您有时会收到消息,这意味着您的代码很好!
如果你在收到通知后执行某项任务——请选择其他解决方案,因为你不相信GCM
这主要取决于网速。有时谷歌服务器也无法处理请求。如果您收到一次通知,证明它可以工作
检查您的代码或服务器端代码。(还有更重要的网络服务或谷歌后台服务)
就我而言,
我的GCM服务成功率是65%(谷歌统计)
但我删除了"collapseKey"(在线示例代码中),然后成功率高达85%
重要的是GCM不是100%成功的服务。(这是谷歌说…)
最后,这个链接将帮助你
http://developer.android.com/guide/google/gcm/gcm.html