Firebase Cloud Messagingを試しています。それは素晴らしいものですが、私はそれを私のために働かせるのが最も難しい時期です。Firebase messaging.setBackgroundMessageHandlerがメッセージを受信していません
私が直面しています問題は、ここでは、サービス労働者であるである私のfirebase-messaging-sw.js
:私がメッセージを送信すると、メッセージが受信されます(私はところでPHP-FCMを使用しています)
console.log('Service worker is loaded!');
self.addEventListener('install', function(event) {
console.log('Service Worker is being installed.');
});
self.addEventListener('activate', function(event) {
console.log('Service Worker is being activated.');
});
importScripts('https://www.gstatic.com/firebasejs/3.6.5/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/3.6.5/firebase-messaging.js');
firebase.initializeApp({
'messagingSenderId': ' ... '
});
var messaging = firebase.messaging();
messaging.setBackgroundMessageHandler(function(payload){
console.log('Received background message: ', payload);
return self.registration.showNotification('Title', {'body': 'Body'});
});
ブラウザで期待どおりときページのフォーカスがonMessage(...)
になっていますが、ページのフォーカスがないかブラウザが閉じているときには表示されません。サービスワーカーはメッセージを受信しません!
「受信した背景メッセージ:...」という行は決して表示されません。メッセージハンドラがまったく登録されていないことを意味します。
は、ここでサンプルメッセージ応答です:
{
"from": " ... ",
"collapse_key": "do_not_collapse",
"data": {
"id": "111"
},
"priority": "high",
"notification": {
"title": "Hi there",
"body": "Message body",
"badge": "1",
"color": "#ffffff"
}
}
ここに問題がある可能性がありますか?それは私を夢中にさせている。