Sav*_*kar 5 geolocation push-notification service-worker
我正在寻找一种解决方案,以在移动浏览器中定期(每1分钟)获取地理位置。我进行了一些研究,得知在后台(当电话被锁定或Webapp未激活时)获取地理位置是不可能的。在前台工作正常。
我正在制作一个Web应用程序,在此我可以获取用户位置并将其发送到我的服务器。一切正常,直到用户锁定手机为止。我尝试了许多解决方法:
我也考虑过将serviceworkers用于我的Web应用程序,但是对于背景https://github.com/w3c/ServiceWorker/issues/745似乎仍然存在问题
我想到了另一个解决方案,但是在投入时间之前,我想知道是否有人已经尝试过了。
我了解了推送通知:
注意:在当前的Chrome浏览器实现中,每当我们收到推送消息并且在浏览器中看不到我们的网站时,我们都必须显示一条通知。也就是说,我们无法在用户不知情的情况下静默地进行操作。如果我们不显示通知,浏览器会自动创建一个通知,让用户知道该应用程序正在后台运行。
在我的应用运行之前,我不介意向用户显示永久通知。我已经准备好进行权衡了。
现在,我的问题是,在第5步,当我唤醒服务工作者**是否有可能我调用可能在后台运行的main.js(主Web应用)**时,它将获取地理位置并进行更新到我的服务器?
是否有人已经成功或失败地尝试过此解决方案,请告知。
小智 -2
您可以尝试页面可见性 Api,它侦听浏览器选项卡的可见性更改是否隐藏或切换到其他选项卡(如果是浏览器)。对于手机来说,这只是一次尝试。
源代码:https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API
或者你也可以看看这个答案..
| 归档时间: |
|
| 查看次数: |
913 次 |
| 最近记录: |