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

5

我目前正在为一个项目开发Web推送通知,但对此有些困惑。我找不到任何关于这个主题的信息,请考虑以下情况:

  1. 用户在m.example.com上订阅Web推送通知
  2. 然后将页面添加到主屏幕,例如安装PWA

所以问题是:

  • 浏览器是否具有与PWA相同的ServiceWorkerRegistration和PushSubscription?
  • 如果用户首先添加到主屏幕,然后再订阅,结果会改变吗?
  • 如果用户通过PWA订阅,浏览器是否会有订阅?

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

3
在Chrome上,无论用户是通过主屏幕还是浏览器标签页中的URL打开PWA,它们都被视为相同,这是相同的体验,并且数据是共享的。反之,订阅来源于哪里对于用户来说是相同的。
Safari将安装的应用和浏览器标签视为不同的上下文,两者之间的数据不共享。但正如Abraham在评论中提到的,Safari不支持Web Push,所以这有点没有意义。

一些链接供感兴趣的人使用:https://web.dev/learn/pwa/detection/#ios-and-ipados-storage-isolation - t1gor

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接