Observera att du alltid kan hämta token med:
FirebaseInstanceID.getInstance().getToken();
Detta returnerar null
om token ännu inte har genererats eller token om den har genererats. I ditt fall är det mycket troligt att token kommer att genereras när användaren har loggat in. Så du bör kunna skicka den till din appserver så snart användaren har loggat in. Om den inte är tillgänglig kan du skulle skicka det i onTokenRefresh-återuppringningen som Chintan Soni nämnde.
Redigera
Med den nya Firebase SDK (21.0.0) får du din token på detta sätt:
FirebaseInstallations.getInstance().getToken(false).addOnCompleteListener(new OnCompleteListener<InstallationTokenResult>() {
@Override
public void onComplete(@NonNull Task<InstallationTokenResult> task) {
if(!task.isSuccessful()){
return;
}
// Get new Instance ID token
String token = task.getResult().getToken();
}
});
Det är bättre att lägga till en lyssnare för mer hantering av svaret .