2017-09-15 3 views
1

Mon application Android ne reçoit aucune notification Firebase. Lorsque j'envoie un message à partir de la console firebase il montre que le processus est terminé et lorsque la ligne est développée il affiche 0 message Envoyer, capture d'écran ci-dessousL'application Android ne reçoit pas de notification Firebase

Screenshot

expiration du message est mis à 1 minute.

J'ai ajouté le FirebaseMessagingService, FirebaseInstanceIdService et ajouté les services dans le manifeste comme celui-ci

<service android:name=".service.TjssFireBaseInstanceIdService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.INSTANCE_ID_EVENT" /> 
     </intent-filter> 
    </service> 
    <service 
     android:name=".service.TjssFireBaseMessagingService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.MESSAGING_EVENT" /> 
     </intent-filter> 
    </service> 

J'ai essayé d'ajouter

android:enabled="true" 
android:exported="true" 

Ceci est la méthode onCreate de classe d'application

@Override 
public void onCreate() { 
    super.onCreate(); 
    mGlide = Glide.with(this); 

    String token = FirebaseInstanceId.getInstance().getToken(); 
    if (token != null) 
     M.log("Firebase Token", token); 
} 

et j'ai un jeton valide dans le logcat sortie

J'ai fait tout ce qu'ils ont dit la documentation, mais cela ne fonctionne pas. Ai-je manqué quelque chose d'important? Toute aide sera appréciée

+0

parts votre manifesh complet et le fichier d'application ,, vous avez initialisé FirebaseInstance dans le fichier d'application? –

+0

J'ai modifié ma question et ajouté 'onCreate' de la classe d'application. Et comment initialiser l'instance Firebase? – Sony

Répondre

0

avez-vous mis google-services.json dans votre dossier de l'application? . si ce n'est pas le cas, placez-le dans le dossier de l'application et regardez les informations dans ce fichier, elles sont relavant de votre projet ou non. Essayez d'envoyer une notification en sélectionnant le nom de votre package d'application. J'espère que cela fonctionnera. Merci

+0

J'ai déjà ajouté que dans le dossier de l'application – Sony

+0

s'il vous plaît vérifier votre nom de paquet dans ce –

+0

Copié le paquet du manifeste dans la console de base de feu – Sony

0

Assurez-vous que votre application n'est pas en cours d'exécution lorsque vous envoyez la notification. Si votre application est au premier plan, vous ne pourrez pas recevoir de notifications.

Si vous souhaitez recevoir des notifications lorsque votre application est au premier plan, modifiez votre service comme suit:

public class TjssFireBaseMessagingService extends FirebaseMessagingService { 

@Override 
public void onMessageReceived(RemoteMessage remoteMessage) { 

    if (remoteMessage.getNotification() != null) { 
     Intent i = new Intent(getApplicationContext(), MainActivity.class); 
     i.putExtra("Val", remoteMessage.getNotification().getTitle()); 
     startActivity(i); 
    } 
} 

@Override 
public void onDeletedMessages() { 
    super.onDeletedMessages(); 
}} 

Le code ci-dessus commencera votre activité principale lorsqu'une notification est reçue et votre application est au premier plan.

0

Dans votre onCreate d'application ajouter cette

FirebaseApp.initializeApp(this); 

ce contexte signifiant ici