Android Kotlin - FirebaseMessagingService get token?

Pikaboo :

This is the code:

class LatestFirebaseMessagingService : FirebaseMessagingService() {
    override fun onNewToken(token: String) {
        super.onNewToken(token)

        Log.d("pikabo", token)
    }

    override fun onMessageReceived(remoteMessage: RemoteMessage) {
        super.onMessageReceived(remoteMessage)
    }
}

Manifest:

    <service
        android:name=".classes.LatestFirebaseMessagingService"
        android:stopWithTask="false">
        <intent-filter>
            <action android:name="com.google.firebase.MESSAGING_EVENT" />
        </intent-filter>
    </service>

I didn't get the token even once?!

I guess I initialized it right because

val reliableIdentifier: String = FirebaseInstanceId.getInstance().id

In activity is working

What am I missing??

Oscar Emilio Perez Martinez :

The right way to get firebase token is using addOnCompleteListener as below

 FirebaseInstanceId.getInstance().instanceId.addOnCompleteListener { task ->
        if (task.isSuccessful)
            print(task.result?.token)
        else
            print(task.exception?.message)
 }

Take a look at the official documentation

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=319630&siteId=1