Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript PWA是否与浏览器共享web推送订阅?_Javascript_Service Worker_Progressive Web Apps_Web Push - Fatal编程技术网

Javascript PWA是否与浏览器共享web推送订阅?

Javascript PWA是否与浏览器共享web推送订阅?,javascript,service-worker,progressive-web-apps,web-push,Javascript,Service Worker,Progressive Web Apps,Web Push,我目前正在为一个项目处理web推送通知,对此我感到有点困惑。我找不到任何关于这个话题的信息,所以请考虑下面的情景: 用户在m.example.com上订阅web推送通知 然后将页面添加到主屏幕,例如安装PWA 因此,问题是: 浏览器是否具有相同的ServiceWorkerRegistration和 PushSubscription作为PWA 如果用户 首先添加到主屏幕,然后订阅 浏览器会有吗 如果用户通过PWA订阅,是否订阅 在Chrome上,是的,它们被视为相同的,无论用户如何打开PWA(主

我目前正在为一个项目处理web推送通知,对此我感到有点困惑。我找不到任何关于这个话题的信息,所以请考虑下面的情景:

  • 用户在m.example.com上订阅web推送通知
  • 然后将页面添加到主屏幕,例如安装PWA
  • 因此,问题是:

    • 浏览器是否具有相同的
      ServiceWorkerRegistration
      PushSubscription
      作为PWA
    • 如果用户 首先添加到主屏幕,然后订阅
    • 浏览器会有吗 如果用户通过PWA订阅,是否订阅

    在Chrome上,是的,它们被视为相同的,无论用户如何打开PWA(主屏幕与浏览器选项卡中的URL),都是相同的体验,数据在用户之间共享。相反,无论用户从何处订阅,订阅都是相同的


    Safari将已安装的vs browser选项卡视为不同的上下文,两者之间不共享数据。但是正如abraham在评论中提到的,Safari不支持web推送,因此这是一个没有实际意义的问题。

    预期结果是什么?我想预期结果是在移动网站和WPA上都有相同的订阅以及订阅和注册。我们目前正在测试,稍后可能会有一些结果。我没有资料来源,但我认为在大多数Android设备上,它将是相同的
    ServiceWorkerRegistration
    ,但在不同上下文中运行的iOS PWA上。(尽管iOS不支持推送)