跳转到内容

进阶

目标: 一个使用平台能力——推送、文件处理、更深的 OS 集成——却不会在缺少这些能力的 引擎上崩坏的 PWA。这一层的核心纪律是渐进增强:每一项进阶能力都先检测支持, 缺失时优雅降级。

先完成核心路径——入门可安装离线性能——再来碰这些。

  1. 特性检测,绝不假设。 在使用前用 in/typeof 检查守护每项能力。

  2. 验证真实支持。 规范里存在某能力,不等于它在你用户的浏览器上可用。在依赖之前, 查阅相应的兼容性矩阵——从 按特性开始。

  3. 优雅降级。 缺少某能力时,应用应失去该特性,而非崩坏。在发布增强之前先规划好回退。

Web Push 通知。 用服务端消息重新触达用户。支持情况与 iOS「仅已安装」约束都很现实—— 在构建订阅流程前阅读 web-push 兼容性数据通知参考

File System Access。 为类编辑器应用读写用户选择的文件。这是支持最不均衡的能力之一, 因此回退(下载/上传)是必需的——见 File System Access 参考及其 兼容性数据

Background Sync。 延迟并重放离线时的写入。当作增强;在 background-sync 兼容性数据中确认支持。

角标。 在应用图标上呈现未读状态。通过 角标兼容性数据确认。

  • Service Worker 更新。 提供刻意设计的更新流程,使用户不被困在陈旧 worker 上—— 生命周期参考覆盖 waitingskipWaiting 与更新提示。
  • 存储持久性。 为必须存活于驱逐的数据请求持久化存储;见 存储持久化
  • 平台怪癖。 iOS 偏离最多;把 iOS / Safari 平台说明放在手边。
  • 兼容性浏览器 —— 上述每个决定背后的支持数据。
  • 能力参考 —— 进阶 API 的深入说明。
  • 生态 —— 应用达到生产级后的分发与变现。

← 返回指南总览。