如何通过gcm发送自定义消息并获得响应?

时间:2016-09-01 05:14:22

标签: java android google-cloud-messaging

我想通过gcm发送自定义消息,就像带有选项的问题一样,并从接收者那里得到该问题的回复。 简单来说,我想制作一个投票应用程序,它使用GCM服务来提问和获得回复。

1 个答案:

答案 0 :(得分:1)

您检查了Sending Upstream Messages吗?来自源链接的代码块:

try {
    Bundle data = new Bundle();
    data.putString("my_message", "Hello World");
    data.putString("my_action","SAY_HELLO");
    String id = Integer.toString(msgId.incrementAndGet());
    gcm.send(SENDER_ID + "@gcm.googleapis.com", id, data);
    msg = "Sent message";
}
catch (IOException ex) {
    msg = "Error :" + ex.getMessage();
}

您可以在data中添加投票。您也可以发送在token中收到的GCM RegistrationIntentService.onHandleIntent()。然后,服务器可以使用此令牌来唯一识别您并通过GCM直接向您发送消息。

检查Downstream Messaging Via HTTP Post,您的JSON将如下所示。

https://gcm-http.googleapis.com/gcm/send
Content-Type:application/json
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA

{
    "data": {
        "score": "5x1",
        "time": "15:10"
     },
     "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."
}

" to"拥有设备的令牌。