我有一个用angular 9
创建的pwa,应用程序是用于交易的,所以数据,几乎每秒钟都在变化,我的用户可以创建语句,当他们的语句成为真的我的应用程序将通过发送通知通知通知他们,我也有一个服务工人安装和激活,一切都很好,在桌面和移动,但当移动屏幕关闭或pwa最小化,pwa停止工作,通知不再发送,我尝试了background-sync
和periodic-background-sync
,但没有帮助
谁能给予我该怎么做?
这是我的服务员
async function grantPeriodic(){
const status = await navigator.permissions.query({
name: 'periodic-background-sync',
});
if (status.state === 'granted') {
console.log("granted");
} else {
}
}
async function periodicSyncFunc(){
const registration = await navigator.serviceWorker.ready;
if ('periodicSync' in registration) {
try {
console.log("synced");
await registration.periodicSync.register('content-sync', {
minInterval: 10000,
});
} catch (error) {
}
}
}
self.addEventListener('periodicsync', (event) => {
if (event.tag === 'content-sync') {
event.waitUntil(
periodicSyncFunc()
);
}
});
grantPeriodic() ;
1条答案
按热度按时间kr98yfug1#
我还在尝试在后台运行PWA应用。周期性同步路径似乎是一条死胡同,因为它只允许服务人员每24小时运行一次。请访问https://github.com/WICG/background-sync/issues/169#issuecomment-563942794
你的最小间隔10秒不会被遵守。我正在尝试创建某种地理围栏应用程序