Google Cloud Messagingのご利用をお待ちしております。さて、私は登録IDを取得するためにユーザーを登録する必要があるのですか? registrationIDが変更される可能性はありますか?Androidクラウドメッセージング(ユーザー登録のしかた)
ご迷惑をおかけして申し訳ありません。
あなたは新規登録トークンを要求する際に知っておくInstanceIDListenerService#onTokenRefresh()
を実装してサービスを作成することができ、あなたに
Google Cloud Messagingのご利用をお待ちしております。さて、私は登録IDを取得するためにユーザーを登録する必要があるのですか? registrationIDが変更される可能性はありますか?Androidクラウドメッセージング(ユーザー登録のしかた)
ご迷惑をおかけして申し訳ありません。
あなたは新規登録トークンを要求する際に知っておくInstanceIDListenerService#onTokenRefresh()
を実装してサービスを作成することができ、あなたに
ありがとうございます。
public class MyInstanceIDService extends InstanceIDListenerService {
public void onTokenRefresh() {
refreshAllTokens();
}
private void refreshAllTokens() {
// assuming you have defined TokenList as
// some generalized store for your tokens
ArrayList<TokenList> tokenList = TokensList.get();
InstanceID iid = InstanceID.getInstance(this);
for(tokenItem : tokenList) {
tokenItem.token =
iid.getToken(tokenItem.authorizedEntity,tokenItem.scope,tokenItem.options);
// send this tokenItem.token to your server
}
}
};
その後、あなたのAndroidManifest.xml
にあなたのサービスを追加します。
<service android:name=".MyInstanceIDService" android:exported="false">
<intent-filter>
<action android:name="com.google.android.gms.iid.InstanceID"/>
</intent-filter>
</service>
出典:新しいFirebaseクラウドメッセージングを見てみる場合は https://developers.google.com/instance-id/guides/android-implementation#refresh_tokens
、あなたは何を登録する必要はありませんそれは自動的にあなたのためにそれを行います。しかし、GCMの経験から、私はいつも手動でログインするたびに登録しています。別のデバイスからログインしているため、プッシュ通知を受信するためにそのデバイスを登録する必要があります。