跳转到内容

OpenPWA 真机实验室

发布于

OpenPWA 真机实验室测量 Web 应用在真机上的行为,记录设备和系统构建号,并区分 Safari 标签页与主屏应用。第一次测试的数据包公开了测试流程、实验笔记、原始读数、带哈希的探测脚本和截图,并按证据来源给每项发现标上 A、S 或 O。手里有同类设备的人可以照着重做某一步,再和公开的读数对照。

browser-compat-data、规范和厂商发布说明记载特性是否存在、从哪个版本开始有,属于第 1 层「支持」。在线 demo 在你的设备上调用 API,展示第 2 层「能力」。要测第 3 层「行为」,操作员就在指定设备上按公开流程操作,记录实际发生的事。术语定义见 OpenPWA 证据分层。

兼容表记载,iOS 16.4 的 Safari 为主屏 Web 应用加入了 Web Push(Web Push for Web Apps on iOS and iPadOS,webkit.org)。Safari 标签页控制的 worker 能否收到 notificationclick,需要另测。页面与 manifest 指定的颜色冲突时状态栏取哪种颜色、Safari 写入的 Cookie 在主屏应用首次打开时是否还在,也都要测行为,兼容表回答不了。各项结果分别列在对应的行为页。

实测结果进入兼容数据时,公开的测试流程规定实测可以佐证某一行,原有的厂商、BCD 或规范来源保留。与来源矛盾的结果记为差异,列入带日期注记的候选,不覆盖原行。

已发布的结果来自一台设备、一名操作员。

设备 系统与构建号 渠道 测试日期
iPhone 16 Pro(iPhone17,1) iOS 18.6.2(22G100),Safari 18.6 正式版 2026-10-20

设备上的操作由 OpenPWA 的一名操作员完成。Mac 上的 AI 代理会话用 USB 连接设备,经 WebKit 远程检查器读取页面状态,记录实验笔记,并起草这些页面。以后可能加一台 iPad,只跑一小部分测试(多任务窗口和「添加到主屏幕」面板);已发布的结果里没有 iPad。结果各自注明设备和构建号。

最近一次实测:2026-10-20,iPhone 16 Pro,iOS 18.6.2 (22G100),13 项行为

研究报告把 2026-10-20 的测试当作 iOS 27 重跑的基线,并写明这台手机将升级到 iOS 27,升级之后这些测量无法在这台手机上重做。计划中的重跑列在测试路线图里。

/demo/ 在你的设备上逐个调用 Web 应用 API,展示点按当时的反应,属于第 2 层的能力演示。这是你自己的观察,不是 OpenPWA 的测量。2026-10-20 的测试除了实验室自己的测试页,也测试了 demo 页面;行为页公布这次测试的读数,连同环境和时间。

demo 页面 可以试什么 相关的行为页
Push 请求权限、订阅、发一条本地通知 notification-permission-prompt、notificationclick-in-home-screen-apps、declarative-web-push-subscription-scope
Badging navigator.setAppBadge() 与 clearAppBadge() app-badge-on-home-screen
Install 页面能否拿到安装提示相关 API install-apis-on-ios
Share navigator.share() 与 canShare() 暂无行为页
File handling launchQueue 与声明的文件处理器 未实测,已列入路线图
  • 行为按实测行为分页面,记录问题、操作步骤、各系统构建的结果,以及每条结果支撑哪些条目。
  • 测试索引列出每个测试编号、用时、测试页和它对应的行为。
  • 路线图列出计划中的测试与重跑,附状态和原因。
  • 操作指南说明怎样在 iPhone 上跑测试、配置 Web Inspector、给截图命名、提交结果。
  • 实测笔记收录根据实验室测试写成的研究。
  • 数据收录 results.json、研究数据包和测试页哈希清单。
  • 测试页版本列出各版本测试页、冻结的 v1 文件清单及其哈希。
  • 方法说明测试流程、A 与 S 两种置信度标签、效度威胁。
  • 引用给出引用格式,以及结果行锚点的规则。

设备操作由 OpenPWA 的一名操作员在 iPhone 16 Pro 上完成。AI 代理会话通过 USB 读取页面状态、记录实验笔记并起草本文;自动门禁和 AI 事实核查做了检查。没有人逐篇审阅。