基本的に、あなたはあなたのメインの活動で、次の操作を行う必要があります。その後
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_layout);
GCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
GCMRegistrar.register(this, GCMIntentService.GCM_SENDER_ID);
} else {
Log.v(TAG, "Already registered");
}
}
アプリは余分registration_id
でcom.google.android.c2dm.intent.REGISTRATION
意図を受け取るたびに、あなたのアプリケーションサーバにを登録IDを送信する必要があります。これは、GoogleがアプリのIDを定期的に更新するときに発生する可能性があります。
あなたは例えば、独自の実装でcom.google.android.gcm.GCMBaseIntentService
を拡張することによって、これを達成することができます。:詳細について
public class GCMIntentService extends GCMBaseIntentService {
// Also known as the "project id".
public static final String GCM_SENDER_ID = "XXXXXXXXXXXXX";
private static final String TAG = "GCMIntentService";
public GCMIntentService() {
super(GCM_SENDER_ID);
}
@Override
protected void onRegistered(Context context, String regId) {
// Send the regId to your server.
}
@Override
protected void onUnregistered(Context context, String regId) {
// Unregister the regId at your server.
}
@Override
protected void onMessage(Context context, Intent msg) {
// Handle the message.
}
@Override
protected void onError(Context context, String errorId) {
// Handle the error.
}
}
を、私は(再)でしょうwriting the client side codeとthe Advanced Section of the GCM documentationのドキュメントをお読みください。
希望に役立ちます!
[AndroidでGoogleクラウドメッセージングの登録IDの変更を処理する](http://stackoverflow.com/questions/16838654/handling-registration-id-changes-in-google-cloud-messaging-on)の複製が可能です-アンドロイド) – Eran