我正在 AngularJS 上开发 PWA。我也在使用服务人员来离线工作。我在 service worker 上实现了一个名为 alarm() 的方法,它有一个 setTimeout 函数,它以设定的时间间隔显示通知。我的问题是这在桌面上运行良好,当我连接我的 Android 手机并使用 Chrome 远程设备在 Android 手机上运行它时也是如此。它在桌面浏览器上运行良好并显示通知,但当我从 HTTPS 源访问该站点时,它在手机上不起作用。
serviceWorker.js
同步:
self.addEventListener('sync', function(event) {
if (event.tag == "sync") {
event.waitUntil(alarm());
console.log("sync fired!!");
}
});
报警功能:
//shows a notification every minute
function alarm(){
console.log('running:');
setTimeout(function(){
alarm();
self.registration.showNotification("Alert!");
}, 1*60*1000);
}
谢谢你。