FirebaseInstanceIdService is deprecated

2019-01-02 17:45发布

Hope all of you aware of this class, used to get notification token whenever firebase notification token got refreshed we get the refreshed token from this class, From following method.

@Override
public void onTokenRefresh() {
    // Get updated InstanceID token.
    String refreshedToken = FirebaseInstanceId.getInstance().getToken();
    Log.d(TAG, "Refreshed token: " + refreshedToken);
}

To use this as i want to implement FCM, I extended MyClass from FirebaseInstanceIdService

But, Showing that FirebaseInstanceIdService is deprecated

Does anybody know this?, What method or class i should use instead of this to get refreshed token as this is deprecated.

I'm using : implementation 'com.google.firebase:firebase-messaging:17.1.0'

I checked the document for same there is nothing mentioned about this. : FCM SETUP DOCUMENT


UPDATE

This issue has been Fixed.

As Google deprecated the FirebaseInstanceService,

I asked the question to find the way and i get to know that We can get the Token from FirebaseMessagingService,

As before, when i asked the Question Documents were not updated but Now Google docs updated so for more info, Refer this google doc : FirebaseMessagingService

OLD From : FirebaseInstanceService (Deprecated)

@Override
public void onTokenRefresh() {
    // Get updated InstanceID token.
    String refreshedToken = FirebaseInstanceId.getInstance().getToken();
    Log.d(TAG, "Refreshed token: " + refreshedToken);
}

NEW From : FirebaseMessagingService

@Override
public void onNewToken(String s) {
    super.onNewToken(s);
    Log.d("NEW_TOKEN",s);
}

Thanks.

7条回答
刘海飞了
2楼-- · 2019-01-02 18:43

In KOTLIN:- If you want to save Token into DB or shared preferences then override onNewToken in FirebaseMessagingService

override fun onNewToken(token: String?) {
        super.onNewToken(token)
    }

Get token at run-time,use

FirebaseInstanceId.getInstance().instanceId
                        .addOnSuccessListener(this@SplashActivity) { instanceIdResult ->
                            val mToken = instanceIdResult.token
                            println("printing  fcm token: $mToken")
                        }
查看更多
登录 后发表回答