我一直在尝试在用户收到 FCM 后台通知时显示自定义通知,但每次用户收到新通知时我都会收到两个通知,一个是默认的 Firebase SDK,另一个是来自我的服务工作线程代码的自定义通知。
有没有办法禁用默认通知或在出现后立即将其隐藏,以便用户只能收到自定义通知?
我已经尝试了所有以前的解决方案,但它们都不起作用,因为许多函数(例如 SetBackgroundHandler)已被弃用。 如果浏览器处于后台,FCM 推送通知会到达两次
请参阅下面的我的代码 -
self.addEventListener('push', function(event) {
// console.log('Received a push message', event);
var body,title,tag,icon;
messaging.onBackgroundMessage((payload)=>{
title = payload.notification.title;
body = payload.data.order_id;
icon = "/images/logo.png';
tag = 'simple-push-demo-notification-tag';
event.waitUntil(
self.registration.showNotification(title, {
body: body,
// icon: icon,
tag: tag,
})
);
});
});
Run Code Online (Sandbox Code Playgroud) javascript push-notification service-worker firebase-cloud-messaging angular