2

我尝试在我的项目中实现 GCM,但在 onMessage 函数中存在问题。根据示例,我写道:

@Override
protected void onMessage(Context arg0, Intent arg1) {
// TODO Auto-generated method stub
Log.d("GCM", "RECIEVED A MESSAGE: " + arg1.getStringExtra("message"));
// other part of the code goes here...
}

好吧,我得到了这个 getStringExtra 的错误 - 似乎这个意图不包含它。我确实收到了 onMessage 事件,这是肯定的。我只是在尝试获取实际消息时遇到错误。我的服务器收到:

{"multicast_id":7888157947681629492,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1348246306435688%196553bef9fd7ecd"}]}
4

3 回答 3

7

GCM 约定是:您在发送时作为“data.foo”提供的值将作为名为“foo”的额外意图传递。您是否将“data.message”放入服务器上的 POST 数据块中?

于 2012-09-21T17:22:26.813 回答
2

如果您正在接收 tne 广播 onMessage() 检查您的服务器端代码,您没有将您的消息分配给服务器中的这个“消息”变量。

于 2012-09-21T17:11:59.797 回答
2

请试试这个。

String message = intent.getExtras().getString("message");
于 2012-12-26T11:03:09.087 回答