Firebase Reg ID для Messagin не получен на моем телефоне, только на эмуляторе - PullRequest
0 голосов
/ 03 декабря 2018

Я хочу отправлять push-уведомления в мое приложение для Android. Проблема в том, что когда я запускаю приложение на своем телефоне, я не могу получить reg id. Но когда я запускаю его на моем эмуляторе, он отлично работает и получает regid.Любые идеи? В случае необходимости здесь код

MyFirebaseInstanceID.java

@Override
    public void onTokenRefresh() {
        super.onTokenRefresh();
        String refreshedToken = FirebaseInstanceId.getInstance().getToken();

        // Saving reg id to shared preferences
        storeRegIdInPref(refreshedToken);

        // sending reg id to your server
        sendRegistrationToServer(refreshedToken);

        // Notify UI that registration has completed, so the progress indicator can be hidden.
        Intent registrationComplete = new Intent(Config.REGISTRATION_COMPLETE);
        registrationComplete.putExtra("token", refreshedToken);
        LocalBroadcastManager.getInstance(this).sendBroadcast(registrationComplete);
    }

    private void sendRegistrationToServer(final String token) {
        // sending gcm token to server
        Log.e(TAG, "sendRegistrationToServer: " + token);
    }

    private void storeRegIdInPref(String token) {
        SharedPreferences pref = getApplicationContext().getSharedPreferences(Config.SHARED_PREF, 0);
        SharedPreferences.Editor editor = pref.edit();
        editor.putString("regId", token);
        editor.apply();
    }

1 Ответ

0 голосов
/ 03 декабря 2018

В соответствии с Firebase FirebaseInstanceIdService устарело.

Попробуйте этот токен, чтобы получить токен!

FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener( MyActivity.this,  new OnSuccessListener<InstanceIdResult>() {
     @Override
     public void onSuccess(InstanceIdResult instanceIdResult) {          
           String newToken = instanceIdResult.getToken();    
     }
 });
...