12

Android アプリにプッシュ通知を送信する ASP.net MVC サーバーがあります。私はすでにアプリに実装Firebase Messagingしており、Firebase ダッシュボードから送信されたときに通知が正常に機能しています。

投稿リクエストを送信して、サーバーを使用してプッシュ通知を送信しようとしましたが、リクエストにはtoフィールドが必要です。以前は、そこからregistration id提供されたものを送信してGCMいました。Firebaseがそれを処理しているので、AndroidでFirebase SDKを使用してtoフィールドに入れる登録IDを取得するにはどうすればよいですか?

4

1 に答える 1

29

Firebase Cloud Messaging をご利用いただきありがとうございます。

呼び出し元の登録 ID を取得できます。

FirebaseInstanceId.getInstance().getToken();

GCM SDK とは異なり、新しいライブラリは自動的にトークンをできるだけ早く取得し、ローカルにキャッシュします。

上記のメソッドは、利用可能な場合、またはnull取得フェーズがまだ進行中の場合、トークンを返します。

コールバックonTokenRefresh()を使用して、トークンが使用可能になったとき、またはローテーションされたときに通知を受け取ることができます。

public class InstanceIDService extends FirebaseInstanceIdService {
    @Override
    public void onTokenRefresh() {
        String refreshedToken = FirebaseInstanceId.getInstance().getToken();
        Log.d(TAG, "Refreshed token: " + refreshedToken);
        sendRegistrationToMyServer(refreshedToken);
    }
}

詳細はこちら: https://firebase.google.com/docs/cloud-messaging/android/client#sample-register

于 2016-05-20T00:03:58.437 に答える