【发布时间】:2016-01-30 04:06:22
【问题描述】:
我正在尝试在“https://gcm-http.googleapis.com/gcm/send”上进行 POST。
我收到的连接如下:
200
{"multicast_id":6570365141544424316,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1446150341234481%2c7295a7f9fd7ecd"}]}
换句话说,它正在与 GCM 通话,应该向我的手机发送推送通知。但是,我怀疑我发送的 JSON 不正确。这是 JSON:
String json ="{\"registration_ids\" : [\"APA91bGxHWapgmxgyvPceu85ArDMLaFekbTt5RGzy3gv1xtSO09tJbvnaeVLefBqNl_iBrctoZQ2AltSMfrXykq8-AEQtUUWnCVH566xcwib4HinI16W3_g\"],\"notification\" : {\"sound\" : \"default\",\"badge\" : \"1\",\"title\" : \"default\",\"body\" : \"Test\"},\"data\" : {\"msg\":{\"message\":\"this is it\"}}}";
我不确定如何调试此问题,因为我没有收到任何信息。如果有人能告诉我正确的语法,我将不胜感激。也许我的语法是正确的,我只是没有向 GCM 发送正确的参数?
【问题讨论】:
-
将
registration_ids替换为to。或许能解决问题。 -
我觉得你的服务器端代码没问题,只需要检查客户端应用程序(android)。您可以在以下stackoverflow.com/questions/32299997/… 阅读我的回答
-
@Ali 我试了一下,它返回的错误代码为 400。也许它不理解 'to'?
-
@BNK 这实际上是我发送的 JSON 字符串!我从您的答案中复制了该字符串并更改了注册 ID,它就像一个魅力:)。我对你的回答投了赞成票。谢谢您的帮助!另外,如果您愿意,可以在这篇文章中给出官方答案,以便我可以将其标记为正确答案?不确定是否需要。
标签: java android json google-cloud-messaging