rot*_*egg 4 android push-notification google-cloud-messaging
我对GCM有一个特殊的问题:它似乎没有发送推送到Android 4.2.2上运行的手机.我测试了八部手机,范围从2.2到4.2.2,运行4.2.2的手机没有接受推送.我们发送了apk给一些拥有4.2.2手机的联系人,他们能够确认只有4.2.2手机推送失败了.总而言之,我们在15个以上的设备上测试了我们的应用程序,其中5个在4.2.2上,只有那5个无法接受推送.
无法接收推送的设备是:
在调查日志后,手机正在向GCM服务器注册,并注册了注册ID.但是,onMessage永远不会被触发.同样,它适用于所有其他未运行4.2.2的手机.我不确定是什么会导致这种特定于API的行为; 我的目标API设置为17,我相信是4.2.
我怀疑的是,因为所有运行4.2.2的手机要么尚未上市,要么工厂解锁,这可能与此问题有关.我还没有能够调查这种怀疑因为4.2.2尚未由AT&T和T-Mobile推出,而且Verizon从昨天(5月21日)开始逐步推出.但是,我并没有真正看到4.2.2库存ROM如何导致GCM无法正常工作.
我尝试过对这个问题进行一些研究,但似乎没有人遇到任何问题.当我搜索GCM和Android 4.2.2时,所有我上SO和谷歌都是新蓝牙堆栈的问题和更新时缩短的电池寿命.我相信我一定做错了,因为其他应用程序似乎发送没有问题,但我不知道从哪里开始调查.如果有人能指出我正确的方向,那将非常感激.
编辑: 所以发现我已经意外关闭了服务器端的日志记录,因此GCM确实在发送时返回错误.我在4.2.2设备上收到了"NotRegistered"错误,即使客户端上的注册过程没有引发错误甚至返回注册ID.再一次,推送到不在Android 4.2.2上的设备工作正常.
| 归档时间: |
|
| 查看次数: |
6923 次 |
| 最近记录: |