GoogleCloudMessagingにプッシュ通知を作成させようとしています。デバイスを登録し、登録IDをサーバーに保存してから、プッシュメッセージをデバイスに送り返すことができます。
私はこれらすべてを行うことができ、catLogはプッシュメッセージがデバイスに届いたことを示しました。しかし、デバイスではプッシュ通知メッセージは表示されませんでした。
これの原因は何でしょうか?
念のため、デバイスを登録する方法は次のとおりです。
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals(""))
{
// Automatically registers application on startup.
GCMRegistrar.register(getApplicationContext(), SENDER_ID);
}
else
{
// Device is already registered on GCM, check server.
if (GCMRegistrar.isRegisteredOnServer(getApplicationContext()))
{
// Not sure what to do here :)
}
else
{
if ( user_id != null )
{
GCMRegistrar.register(this, SENDER_ID); // google register
setRegistrationId ( user_id , regId ); // saves id on server
}
}
}
onPostExecuteで終了GCMRegistrar.setRegisteredOnServer(getApplicationContext()、true);を実行します。
これが私のGCMIntentServiceのonMessage()メソッドです
@Override
protected void onMessage(Context ctxt, Intent message) {
Bundle extras=message.getExtras();
for (String key : extras.keySet()) {
Log.d(getClass().getSimpleName(),
String.format("onMessage: %s=%s", key,
extras.getString(key)));
}
}
これは多分問題ですか?実際にはどうあるべきですか?
ありがとうございました!