安装本机应用程序时禁用移动网络浏览器通知
Disabling mobile web browser notifications when native app is installed
我正开始指定一个项目来实现浏览器通知。从高层次上看,它看起来类似于:
- 创建订阅 pubsub 主题的服务工作者。
- 当事件发生并且 window 处于非前台状态时,利用通知 API 和 WindowClient 发布浏览器通知。
看起来,够直白了。但是,从移动的角度来看,我有点挂了。也就是说,这似乎是典型的模式,如果移动设备同时打开了移动网站并安装了应用程序,则本机通知应优先,浏览器通知应静音。
但是,我似乎无法弄清楚服务人员如何检查移动应用程序的存在。不过,我完全有可能从错误的角度来解决这个问题,而且典型的解决方法是不同的。
Brent,IIUC,你的问题不是问题,因为 W3C Push API or the IETF webpush protocol 根本不支持基于主题的订阅。恐怕这是设计使然:-(
因此,您的本机应用将不会传送与您的浏览器 UA 相同的广播消息。
如果 OTOH 你在谈论保存到主屏幕的 WebApp 和选项卡中的网页 运行 那么,我相信你的服务人员可以选择活动客户端集合中的哪个成员放在前台(如有必要),但只会有一条吐司消息(如果有给定规则 blind/invisible 通知)
我正开始指定一个项目来实现浏览器通知。从高层次上看,它看起来类似于:
- 创建订阅 pubsub 主题的服务工作者。
- 当事件发生并且 window 处于非前台状态时,利用通知 API 和 WindowClient 发布浏览器通知。
看起来,够直白了。但是,从移动的角度来看,我有点挂了。也就是说,这似乎是典型的模式,如果移动设备同时打开了移动网站并安装了应用程序,则本机通知应优先,浏览器通知应静音。
但是,我似乎无法弄清楚服务人员如何检查移动应用程序的存在。不过,我完全有可能从错误的角度来解决这个问题,而且典型的解决方法是不同的。
Brent,IIUC,你的问题不是问题,因为 W3C Push API or the IETF webpush protocol 根本不支持基于主题的订阅。恐怕这是设计使然:-(
因此,您的本机应用将不会传送与您的浏览器 UA 相同的广播消息。
如果 OTOH 你在谈论保存到主屏幕的 WebApp 和选项卡中的网页 运行 那么,我相信你的服务人员可以选择活动客户端集合中的哪个成员放在前台(如有必要),但只会有一条吐司消息(如果有给定规则 blind/invisible 通知)