C'est ma première utilisation de la FCM.
J'ai télécharger un exemple de firebase/guide de démarrage rapide-android et j'ai installer le FCM guide de Démarrage rapide.Mais je ne peux pas obtenir un jeton à partir du journal, même frappé le JOURNAL JETON bouton dans l'application.
Alors j'essaie d'envoyer un message avec Firebase console et jeu de cible à mon application nom du package.J'avais un message entrant.
Je veux savoir la FCM peut être utilisé?GCM tout est ok.
Solution:
Parce que je ne suis pas un développeur Android,juste un backend developer.Donc il me faut un certain temps pour le résoudre.À mon avis,il y a un bug dans l'exemple d'application.
Code:
RegistrationIntentService.java
public class RegistrationIntentService extends IntentService {
private static final String TAG = "RegIntentService";
public RegistrationIntentService() {
super(TAG);
}
@Override
protected void onHandleIntent(Intent intent) {
String token = FirebaseInstanceId.getInstance().getToken();
Log.i(TAG, "FCM Registration Token: " + token);
}
}
MyFirebaseInstanceIDService.java
public class MyFirebaseInstanceIDService extends FirebaseInstanceIdService {
private static final String TAG = "MyFirebaseIIDService";
/**
* Called if InstanceID token is updated. This may occur if the security of
* the previous token had been compromised. Note that this is called when the InstanceID token
* is initially generated so this is where you would retrieve the token.
*/
// [START refresh_token]
@Override
public void onTokenRefresh() {
// Get updated InstanceID token.
// String refreshedToken = FirebaseInstanceId.getInstance().getToken();
// Log.d(TAG, "Refreshed token: " + refreshedToken);
//
// // TODO: Implement this method to send any registration to your app's servers.
// sendRegistrationToServer(refreshedToken);
//
Intent intent = new Intent(this, RegistrationIntentService.class);
startService(intent);
}
// [END refresh_token]
/**
* Persist token to third-party servers.
* <p>
* Modify this method to associate the user's FCM InstanceID token with any server-side account
* maintained by your application.
*
* @param token The new token.
*/
private void sendRegistrationToServer(String token) {
// Add custom implementation, as needed.
}
}
Ajouter ceci dans le MainActivity.java.
Intent intent = new Intent(this, RegistrationIntentService.class);
startService(intent);
Après le faire ci-dessus,vous pouvez obtenir le Jeton dans le logcat.Mais j'ai enfin trouver un moyen pratique pour l'obtenir.Juste utiliser le mode de débogage pour installer l'exemple d'application , et vous pouvez obtenir le jeton lors de la première de temps pour l'installer.
Mais je n't why it can
t imprimer le journal quand je l'installer.Peut-être liées à des systèmes mobiles.
Et puis pourquoi je ne peux pas obtenir la Notification. FirebaseMessagingService.onMessageReceived n'appelle pas sendNotification