java - JSON 值已读取但未收到任何内容

标签 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 发送正确的参数?

最佳答案

正如您在以下问题中可以找到的:

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更多细节。希望这有帮助!

关于java - JSON 值已读取但未收到任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33423995/

相关文章:

java - Firebase 数据库 Android - 将具有不同结构的 datasnapshot 子级映射到 java 对象

android - 房间关系插入删除更新和排序

java - 检查firebase实时数据库用户名是否存在

javascript - javascript 的第二位,用于更改前一个 javascript block 中的设置

java - JSON 对象数组转 Java POJO

java - Eclipse Maven : Unknown errors in pom. xml

java - 我需要使用 Java 中的 DOM 将元素添加到 xml 文件

java - 如何在单元测试时使用 jmockit 将空字符串传递给私有(private)方法?

Java 11 - 如何覆盖 JVM 和系统内存中的敏感信息(也许使用 System.gc()?)

java - JSON 对象返回 "@"和字段名称。这是一个错误还是一个功能?