我正在使用Google提供的示例实现GCM客户端(http://developer.android.com/google/gcm/client.html),但是当我发送测试消息时,我不知道如何接收它如何使用GCM在Android中解析或实际获取推送消息
这里是我用来发送消息的代码:
String msg = "";
gcm = GoogleCloudMessaging.getInstance(BaseHeaderActivity.this);
try {
Bundle data = new Bundle();
data.putString("my_message", "Test message");
data.putString("my_action", "com.google.android.gcm.demo.app.ECHO_NOW");
String id = Integer.toString(msgId.incrementAndGet());
gcm.send(ListCategoriesActivity.SENDER_ID + "@gcm.googleapis.com", id, data);
msg = "Sent message";
}
catch (IOException ex) {
msg = "Error :" + ex.getMessage();
}
return msg;
消息似乎要发送的确定,然后从GcmIntentService方法空隙onHandleIntent(意向意图)被执行秒后我发送消息,但问题是,在intent里面的extras里面没有像我在发送消息的方法中放置的那些键:
data.putString("my_message", "Test message");
data.putString("my_action", "com.google.android.gcm.demo.app.ECHO_NOW");
这里是我GcmIntentService类:
public class GcmIntentService extends IntentService {
private final String TAG = "GcmIntentService";
public GcmIntentService() {
super("GcmIntentService");
}
@Override
protected void onHandleIntent(Intent intent) {
Bundle extras = intent.getExtras();
Set<String> keys = extras.keySet();
Log.i(TAG, "Received: " + extras.getString("my_message"));
}
...
}
的日志 “收稿日期null”,并且存在于额外的键是: [message_type,google.message_id,事件,机器人。 support.content.wakelockid]
任何想法??
在此先感谢。
我面临同样的问题。你有答案吗? –