如何避免重复推送通知
Posted
技术标签:
【中文标题】如何避免重复推送通知【英文标题】:how to avoid duplicate Push Notification 【发布时间】:2021-05-06 17:18:38 【问题描述】:importScripts('https://www.gstatic.com/firebasejs/8.4.3/firebase-app.js')
importScripts('https://www.gstatic.com/firebasejs/8.4.3/firebase-messaging.js')
firebase.initializeApp(...config);
const messaging = firebase.messaging();
messaging.onBackgroundMessage(function (payload)
console.log('sw-fb', payload);
const notificationTitle = payload.notification.title;
const notificationOptions =
body:"something Body",
data:...
;
return self.registration.showNotification(notificationTitle, notificationOptions);
,
这里我试图显示 来自 firebase 的推送通知,但是对于每个通知都会获得 两个通知。第一个是默认的,第二个来自我的服务人员。
谁能帮我修复重复的默认通知。
【问题讨论】:
【参考方案1】:为避免默认通知,通过fcm发送时需要发送如下通知数据
var payload =
notification:,
data:
title:'title',
body:'something body',
image:path,
icon...,
token: registrationToken
;
messaging.send(payload).then((result) => console.log(result))
并将服务工作者更新为
messaging.onBackgroundMessage((payload) =>
const data = payload;
const notificationTitle = data?.title;
const notificationOptions =
image:data.image, title:data.title, body: data.body, icon:data.icon
self.registration.showNotification(notificationTitle, notificationOptions);
);
【讨论】:
以上是关于如何避免重复推送通知的主要内容,如果未能解决你的问题,请参考以下文章