Nic*_*ten 10 apple-push-notifications ios google-cloud-messaging
所以我遇到了一个非常奇怪的问题,就是Google Cloud Messaging.我遇到的问题是它正在成功注册设备,当发送消息时,我收到来自Google的成功消息.但设备从未收到任何消息.
我从GCM回来的消息是:
"result": "Push notification sent successfully: {\"multicast_id\":6008387530769664000,\"success\":1,\"failure\":0,\"canonical_ids\":0,\"results\":[{\"message_id\":\"0:1442824842607522%73fc535e73fc535e\"}]}"
Run Code Online (Sandbox Code Playgroud)
为了让事情变得更加混乱,我的实施大约在两周前开始工作,到目前为止我还没有改变任何东西.Android版本的应用程序正在接收消息,没有问题,只有iOS实现无法正常工作.
任何帮助将非常感激!
谢谢!
Nic*_*ten 12
所以我终于把最后剩下的毛发拉出脑袋后解决了这个问题.
事实证明设备正在接收消息,但GCM默认将优先级设置为最低优先级.这意味着设备会收到通知但从不显示通知.此优先级用于静默通知以在后台唤醒应用程序.我发现这是因为我一直在控制台中收到消息:
低优先级推送:[com.test.app] - 不支持后台刷新
优先级是介于1和10之间的值,因此我将优先级设置为10并立即在设备上获取消息.我的GCM POST请求正文现在看起来像这样:
{
"to": "GCM token here",
"notification": {
"sound": "default",
"badge": "2",
"title": "default",
"body": "Test Push!",
},
"priority" : 10,
}
Run Code Online (Sandbox Code Playgroud)
我真的希望这有助于其他人,因为我已经花了一周的时间来解决这个问题.
(ノಠ益ಠ)ノ
编辑:
您可以将"priority"设置为"high",其设置与将其设置为"10"完全相同(优先级为0到10之间的值.Google将文本转换为iOS的数字
| 归档时间: |
|
| 查看次数: |
5763 次 |
| 最近记录: |