一个新的实验性 Web Install API 目前已在微软 Edge 和 Chrome 中进入 Origin Trial(源试用)阶段。这个 API 允许开发者在应用内部的用户交互中,以编程方式触发 PWA 的安装提示。它的目标是简化软件的发现和分发流程,尤其适用于那些不知道浏览器地址栏里有安装图标,或者平时不使用应用商店的用户。
微软 Edge 团队发布的官方说明文档中解释了推出该 API 的动机:
终端用户目前并没有一种标准、跨平台的方式来获取应用。用户往往需要面对各种不一致、隐藏且专有的获取方式(比如自定义协议或应用商店)。
Web Install API 的目标就是解决这个问题,提供一种开放、易用、标准化且跨平台的应用获取方式。
该提案的作者是微软 Edge 浏览器团队的 Diego Gonzalez。这也延续了微软过去对渐进式 Web 应用(PWA)的持续推动(例如 PWABuilder)。相比之下,苹果在 iOS 上对 PWA 的支持一直比较滞后,有时还会加入较多限制,这一情况过去也曾引起欧盟方面的关注。
Web Install API 引入了一个新的 navigator.install() 方法。当应用安装成功时,它会返回一个 promise,并解析出一个 manifest_id;如果用户拒绝安装(AbortError)或没有找到 manifest(DataError),则会报错。如果是在无痕/隐私模式下触发安装,这个 promise 也会被拒绝。
这个 Install API 的设计目标,是替代或增强现有的 beforeinstallprompt 事件,并让 PWA 可以通过直接的安装链接进行分发。

Diego Gonzalez 表示,目前多个浏览器厂商已经对推动这一提案的标准化和实现表现出兴趣:
在 W3C WebApps 工作组范围内,Firefox、Safari 和 Chromium 已经同意推进“当前文档安装”的能力。同时也在讨论一种声明式的实现方式,因此在跨厂商层面是有进展的。不过,最终是否落地,还是取决于各个浏览器实现方。
……这也意味着在初期,我们只能安装当前浏览的页面,而跨站点安装仍在 WICG 中继续讨论。
目前这个 API 仍处于早期阶段,规范预计还会继续变化(比如跨站应用安装能力)。有兴趣测试并提供反馈的开发者,可以将 Chrome 或 Edge 升级到 143 以上版本;对于 139–142 版本,可以通过 about:flags 手动开启,或者参与微软 Edge 的 Origin Trial。其他浏览器(如 Safari、Firefox)目前会忽略 navigator.install,继续使用各自已有的“添加到主屏幕”或“安装应用”流程。





