1

Androidドキュメントに記載されているGCM APIとgcm.jarを使用しています。その動作は良好です。しかし、GCM が登録 ID を更新すると、どのように、どこで更新を聞くことができregistration idますか?

onRegistered(Context context, String registrationId)クラスにメソッドがありますが、GCMIntentServiceこれはリッスンできるメソッドregistration idですか (ID が GCM によって更新されたか)? または、更新された登録 ID をリッスンする他の方法はありますか? および別の混乱更新された登録IDでテストできるテストケースはありますか?

私の現在の実装onRegistered()

@Override
    protected void onRegistered(Context context, String registrationId) {
        Log.i(TAG, "Device registered: regId = " + registrationId);

        dataStore = new DataPrefStore(context);
        //Store registration Id
        dataStore.setRegistrationId(registrationId);
        //Notify GCM registration
        displayMessage(context, Constants.GCM_REGISTER_MESSAGE);

    }

助けてください。

4

1 に答える 1

1

はい、あなたは正しい実装をしています。登録 ID が更新されるたびに、GCMINtentService クラスの onRegistered() メソッドが呼び出されます。

Note that Google may periodically refresh the registration ID, so you should design your    
Android application with the understanding that the com.google.android.c2dm.intent.REGISTRATION intent may be called multiple times.
于 2012-08-29T08:41:27.237 に答える