问题描述
我的工作正常 ServiceWorker
。我可以使用 Android Chrome 安装我的网络应用程序,没有任何问题。正在显示正确的应用程序图标,它成功地处理了网络推送通知。现在,当我尝试在成功的 push
事件中向已安装的 PWA 添加徽章计数时,徽章被添加到 Chrome 而不是已安装的 Web 应用程序。
根据docs
当从 Service Worker 调用 navigator.setAppBadge() 时,它会标记范围在 Service Worker 范围内的所有应用。
sw.js:
self.addEventListener('push',event => {
try {
const json = event.data.json()
const title = json.title || ''
const options = json.options || {}
event.waitUntil(self.registration.showNotification(title,options))
if ('setAppBadge' in navigator) {
// also tried self.setAppBadge(1)
navigator.setAppBadge(1)
}
} catch (e) {
try {
const title = 'Pranešimas'
const options = { body: event.data.text() }
event.waitUntil(self.registration.showNotification(title,options))
} catch (e) {
event.waitUntil(self.registration.showNotification(''))
}
}
})
我错过了什么吗?有人可以帮忙吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)