如何让 FireFox 在不加载页面的情况下接收后台推送通知?
How to Make FireFox recieve background push notification without loading page?
我正在使用 FCM 进行网络推送通知。
一切正常,直到 Firefox 突然停止发送推送通知,除非页面在浏览器中打开。
如果页面已加载但未聚焦,则会收到通知。我 console.log()'d onBackgroundMessage 有效负载,我可以确认服务工作者收到它。但是,如果我关闭该选项卡并发送推送通知,它不会收到。
相同的设置适用于 Chrome、Opera 和 Edge,没有错误。 firefox 有什么东西吗?
Firefox 版本:88.0.1(64 位)
在我的 Service Worker 中,我有:
messaging.onBackgroundMessage(function (payload) {
// Customize notification here
var action_label;
if('action_label' in payload.data){
action_label = payload.data.action_label;
} else{
action_label = "Details";
}
const notificationTitle = payload.data.title;
const notificationOptions = {
body: payload.data.body,
icon: payload.data.icon,
requireInteraction: true,
data: {
click_action: payload.data.click_action,
url:payload.data.click_action
},
actions: [
{
action: "open_url", title: action_label
}
]
};
self.registration.showNotification(notificationTitle, notificationOptions);
});
这与 Firefox 退出而不是关闭有关,可在 MacBook 上使用。
不是真正的技术问题。
我正在使用 FCM 进行网络推送通知。 一切正常,直到 Firefox 突然停止发送推送通知,除非页面在浏览器中打开。
如果页面已加载但未聚焦,则会收到通知。我 console.log()'d onBackgroundMessage 有效负载,我可以确认服务工作者收到它。但是,如果我关闭该选项卡并发送推送通知,它不会收到。
相同的设置适用于 Chrome、Opera 和 Edge,没有错误。 firefox 有什么东西吗?
Firefox 版本:88.0.1(64 位) 在我的 Service Worker 中,我有:
messaging.onBackgroundMessage(function (payload) {
// Customize notification here
var action_label;
if('action_label' in payload.data){
action_label = payload.data.action_label;
} else{
action_label = "Details";
}
const notificationTitle = payload.data.title;
const notificationOptions = {
body: payload.data.body,
icon: payload.data.icon,
requireInteraction: true,
data: {
click_action: payload.data.click_action,
url:payload.data.click_action
},
actions: [
{
action: "open_url", title: action_label
}
]
};
self.registration.showNotification(notificationTitle, notificationOptions);
});
这与 Firefox 退出而不是关闭有关,可在 MacBook 上使用。 不是真正的技术问题。