我们有一个工作应用程序和服务器,它使用C2DM将消息推送到Android设备。
两天前,我们的一个测试设备停止从服务器推送。
-
服务器发送到的设备注册ID似乎已更新且正确,设备具有网络连接,并且使用C2DM(如Gtalk)的Google应用程序可以正常工作。
服务器 从谷歌的C2DM服务器获得成功的响应,正确的响应为"
id=0:133467...61+ac67f...66
在此之前,设备可以正确接受推送。
我们的应用程序在市场上上线,每天都有很多用户使用,我们没有收到任何类似的用户投诉(这并不意味着它不会发生在我们的一些用户身上)
任何想法可以进一步检查以了解这一点?
有没有办法使用从C2DM服务器收到的ID来检查特定消息发生了什么?
谢谢。
有任何跟踪消息的报告。
我要检查的第一件事是您向其发送消息的注册 ID 仍然是设备正在使用的注册 ID - 如果它们不匹配,可能会导致您看到的内容。
我见过几个设备突然停止接收C2DM消息。在我们的例子中,重新启动设备通常会修复它。
我见过的另一种情况是特定网络上的设备无法接收消息(特别是某些 wifi 网络)。
身份验证密钥在 C2DM 服务器上会频繁更改 每次都获取密钥吗?
Google 正在更改其客户端登录过期策略。他们正在以新的标头发送数据以更新注册 我会的,您需要更改代码才能完成这项工作。
以下是详细信息: http://android-developers.blogspot.com/2012/04/android-c2dm-client-login-key.html?m=1