我已经设置了一个支持GCM的Android应用程序,并且有一个小测试应用程序可以向应用程序发送一个消息.当我在模拟器中运行App时,我可以看到(通过记录msgs)它向GCM注册并获得令牌.
然后,当我将令牌放入我的测试应用程序并让它发送一个消息时,结果显示发送了1 msg,0次失败,0次更改了ID.
有时,msg几乎立即出现,有时需要20分钟.星期五,我的2个测试消息花了15分钟和20分钟.我今天早上发送的前2个是立即的,下一个还没有出现 - 它只有10分钟......
有什么办法可以让交货时间一直很快吗?随机的20分钟延迟将是一个非常不可接受的条件.
如果手机连接到网络,我的应用会立即收到GCM消息.但是,当用户关闭网络并在长时间间隔(约2小时)后重新连接时,设备不会收到消息.
我没有添加TTL,所以假设它将是4周.
正在发送的示例消息:
{
"registration_ids":["APA9xxx........."],
"delay_while_idle":false,
"collapse_key":"New Message",
"restricted_package_name":"com.sample.gcm",
"data":{
"app":2,
"product":"message",
"notif":"03lm9h"
}
}
Run Code Online (Sandbox Code Playgroud)
我错过了一些东西确实能让它在交货延迟时起作用吗?
请指出,这些链接可以帮助我解决这个问题.
提前致谢.