我尝试在我的项目中实现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"}]}
答案 0 :(得分:7)
GCM约定是:您在发送时提供的值“data.foo”将作为一个名为“foo”的意图附加内容传递。您是否将“data.message”放入服务器上的POST数据块?
答案 1 :(得分:2)
如果您正在接收广播onMessage() 检查服务器端代码,您没有将消息分配给服务器中的此“消息”变量。
答案 2 :(得分:2)
请试一试。
String message = intent.getExtras()。getString(“message”)。toString();