通知
发布于
通知是已安装的 PWA 在用户离开后再触达的方式:服务器推送一条消息,Service Worker 被唤醒处理,系统通知随之出现。这份能力伴随严格的权限模型——要在上下文中、于用户手势上 询问——以及平台规则,尤其是 iOS 要求 PWA 先被安装到主屏。
这些条目讲解推送管线、权限模型与周期性后台更新。
Web PushPush API + VAPID 订阅、权限模型、Service Worker 的 push/notificationclick 事件,以及 iOS 的要求。
用于更新的周期性后台同步Periodic Background Sync API 如何在后台刷新内容、它与推送通知的区别,以及安装/使用度限制。
iOS 与 Safari 的 Web Push(16.4+)Web Push 在 iOS、iPadOS 与 Safari 上的运作方式:主屏幕前提、由用户交互触发的权限请求、VAPID 订阅,以及必须绕开的 WebKit 规则。
通知的 actions 与 badge 选项Notification 的 actions 按钮与 badge 图片选项如何工作、actions 所要求的持久化通知前提、根据 MDN 兼容性数据的当前浏览器支持情况,以及一个运行时特性检测示例。
通知触发器:已停止开发的 showTrigger / TimestampTrigger 提案Chrome 的 Notification Triggers API(showTrigger 与 TimestampTrigger)原本要解决什么问题、其特性检测写法、Chrome 团队为何终止该 API 的开发,以及为何 showTrigger 与 TimestampTrigger 未出现在 MDN 当前的 showNotification() 选项参考中。
Notification 接口:构造并读取单条通知Notification() 构造函数及其选项(body、icon、tag、data、requireInteraction)、click/close/error 事件,以及根据 MDN,为何直接调用它在几乎所有移动端浏览器上会抛出 TypeError。
Notifications API:系统通知PWA 如何显示操作系统级通知:权限模型、持久与非持久通知之分,以及为何移动端要用持久通知。
通知权限模型Notification.permission 的三种状态如何工作、为何 requestPermission() 需要用户手势,以及为何 MDN 建议用户拒绝后就不要再提示。
← 返回参考总览。