2017-08-30 4 views
0

J'ai installé cordova-plugin-fcm et tout fonctionne bien sauf une petite chose. Lorsque l'application est en arrière-plan/fermée et que la notification push est envoyée à partir de Firebase, une notification apparaît dans les périphériques. En cliquant sur cette notification à partir du bac, mon application démarre, mais le contrôle n'entre pas dans fcm.onNotification().fcm.onNotification() ne pas être appelé en cliquant sur la notification lorsque l'application est en arrière-plan

Mon code app.component.ts ressemble à ce

fcm.onNotification().subscribe(data=>{ 
    if(data.wasTapped){ 
     console.log("Received in background"); 
     console.log(data); 
    } else { 
     console.log("Received in foreground"); 
     console.log(data); 
    }; 
    }); 

Répondre

2

la notification doit avoir "click_action":"FCM_PLUGIN_ACTIVITY" de sorte que le OnNotification() est tiré, il ne le ferait pas que vous l'envoyez de la console firebase, envoyer la notification en utilisant http reqquest, suivez Firebase Cloud Messaging HTTP Protocol documentation pour le faire, et je recommande Postman pour le faire, c'est aussi un plugin chrome.

votre code devrait être comme suit:

{ 
    "notification":{ 
    "title":"Notification title", 
    "body":"Notification body", 
    "sound":"default", 
    "click_action":"FCM_PLUGIN_ACTIVITY", //this is needed so the onNotification() fires when notification is tapped 
    "icon":"fcm_push_icon" 
    }, 
    "data":{ 
    "param1":"value1", 
    "param2":"value2" 
    }, 
    "to":"/topics/topicExample"(or device token), 
    "priority":"high" 
} 

Références:

ces deux liens ont tout ce dont vous avez besoin

bonne chance.