【发布时间】:2013-07-19 23:41:57
【问题描述】:
我正在使用“新”GCM,它是 Google Play 服务的一部分,它不为 Android 和服务器使用 jar。 Android 使用 Google Play apk 注册、接收甚至发送消息。在服务器端,我们与 GCM 通信所需的只是对他们的服务器进行 POST(如果不使用 XMPP)。我已经准备好了:我的 Android 应用注册并等待来自 GCM 的消息。我的服务器可以与 GCM 通信,并且我可以将消息传递到我的 Android 应用。
问题:我正在使用一个带有 POJO 对象的通用 jar(Android 和服务器),我在 JSON 之间进行转换。由于从我的服务器到 GCM 的 POST 使用 JSON 并且在我的 Android 使用中也接收到消息(至少我相信是这样),我认为这会让我的生活更轻松。但是当在 Android 中接收来自 GCM 的消息时,我不知道如何获取消息的有效负载并转换为我的对象。我可以在那里看到信息,但它不是我的对象(有一些信息 GCM 推入其中)。
我的问题是:有没有办法在 Android 端以我发送到 GCM 服务器的方式获取有效负载信息?或者我应该在没有 JSON 的情况下在 Android 中解析接收到的数据? p>
我发送的消息(“数据”是有效负载)
{"registration_ids":["APA91bFdV..."],"collapse_key":null,"delay_while_idle":false,"time_to_live":2419200,"data":{"type":10,"targetVersion": -1,"message":"test msg","url":"test url"}}
我在 Android intent.getExtras().toString() 中得到了什么
捆绑[{message=test msg, collapse_key=do_not_collapse, targetVersion=-1, from=483833987130, type=10, url=test url}]
感谢您的帮助。谢谢!
【问题讨论】:
标签: android google-cloud-messaging