JSON值读取但没有收到

时间:2015-10-29 20:29:20

标签: java android json google-cloud-messaging

我正在尝试对“https://gcm-http.googleapis.com/gcm/send”进行发布。

我收到的连接如下:

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?

1 个答案:

答案 0 :(得分:1)

您可以在以下问题中找到:

  

How to implement a GCM Hello World for Android using Android Studio

final String postData = "{ \"registration_ids\": [ \"" + CLIENT_REG_ID + "\" ], " +
                    "\"delay_while_idle\": true, " +
                    "\"data\": {\"tickerText\":\"My Ticket\", " +
                    "\"contentTitle\":\"My Title\", " +
                    "\"message\": \"Test GCM message from GCMServer-Android\"}}";

当然,您也可以将to用字符串代替registration_ids与数组一起使用。

请阅读Google's documentation - Downstream message syntax了解详情。希望这有帮助!