【发布时间】:2017-07-06 10:53:20
【问题描述】:
我尝试使用 FCM (Firebase Cloud Messaging) 进行 Web 推送通知。 当网络应用程序标签处于焦点时,我成功收到了一条消息。
但是当我关闭选项卡时,它应该调用服务人员(在 FCM 示例中为 firebase-messaging-sw.js)。但它根本没有调用setBackgroundMessageHandler。
const messaging = firebase.messaging();
messaging.setBackgroundMessageHandler(function(payload) {
console.log('[firebase-messaging-sw.js] Received background message ', payload);
const notificationTitle = 'Background Message Title';
const notificationOptions = {
body: 'Background Message body.',
icon: 'firebase-logo.png'
};
return self.registration.showNotification(notificationTitle,
notificationOptions);
});
【问题讨论】:
-
您是否设置了
messagingSenderId?因为除此之外,您的代码看起来与我所拥有的相同 - 并且有效。 :-/ -
你关闭标签了吗?我认为它在标签未关闭且未激活时有效
标签: javascript web firebase firebase-cloud-messaging