01|PWA 真是在做“网页增强”,还是在碰入口?
写到这里, 跨端这条线其实已经分出两种非常不同的现代答案了。
一种是 React Native 这种:
- 接受原生宿主
- 接受平台差异
- 用更接近前端的心智去借宿主能力
另一种则完全不是这套逻辑。
PWA 更像是在问:
如果浏览器本来就是最普遍的运行环境,那为什么应用一定非得通过商店、非得完全服从平台入口,才能被当成“App”看待?
这一步为什么危险?
因为它碰的已经不只是技术体验问题。
它还碰到了:
- 安装入口
- 分发权
- 支付权
- 平台和 Web 的边界
也就是说,
PWA 最值得写的地方不是:
“它是不是又给网页多加了几个能力。”
而是:
它试图把 Web 再往“应用平台”方向推一步。
而一旦 Web 往前迈这一步, 平台就不可能无动于衷。
02|“更像 App”这句话,反而遮住了重点
PWA 当然有很多非常直观的卖点:
- 可安装
- 离线
- 推送
- 独立窗口
- 更像原生应用的体验
可如果你只停在这些功能表,
你还是会把 PWA 理解浅。
因为它更深的一层,其实是:
它试图让 Web 不再只是“打开一个地址”,而能在用户心智和设备入口上,占住一块更像应用的位置。
这会带来非常大的后果。
因为一旦这件事成立, 那就意味着:
- 安装不一定要经过商店
- 更新不一定要等审核
- 分发不一定要走平台市场
- 某些数字业务也许可以绕开平台抽成
这才是 PWA 真正让平台警惕的地方。
它不是单纯提升了网页体验。
它是在试探:
Web 能不能重新抢回一部分本该属于应用商店和平台宿主的入口地盘。
03|Safari 真的是慢,还是根本不想让你走太远?
很多前端后来聊 PWA,
最容易把问题讲成:
- Safari 支持太慢
- 某些 API 不给
- iOS 体验总差一截
这些当然都对。
可如果只写成“浏览器实现慢”, 这条线就会被写浅。
因为 PWA 在 iOS / Safari 上那些著名的“不够完整”,
往往并不只是工程进度问题。
它们底下更像一套平台边界管理:
- 允许你像一点 App
- 但别像到可以无视商店
- 允许你装到主屏
- 但别完全摆脱平台安全模型
- 允许你有一点离线和推送
- 但别把 Web 真的抬成和原生分发平起平坐的入口
也就是说,
PWA 在 Apple 生态上的长期尴尬,
不能只理解成“落后”。
更应该理解成:
平台一直在谨慎决定,Web 到底能被允许像 App 到什么程度。
这就和 Flash 那条线很像了。
区别只在于:
Flash是第三方运行时PWA是开放 Web 自己往前长
可一旦它们都开始碰入口和宿主边界, 平台的警惕会立刻长出来。
04|欧盟这场风波,到底把什么矛盾掀开了?
这一段几乎是 PWA 历史里最应该写进正文的现代节点。
因为它把很多原本还可以装成“技术实现节奏”的东西, 一下子撕开了。
事情大概是这样:
Apple 一度宣布,
由于 DMA 合规带来的变化,
欧盟用户的 Home Screen web apps 能力将被移除。
后来又很快反转, 说会继续提供现有能力, 但继续强调:
这套能力仍然要建立在 WebKit 及其安全架构上。
这件事最值得盯住的, 不是 Apple “改主意”这件事本身。
而是它几乎公开承认了:
一旦 Web App 真开始碰到替代引擎、平台安全模型和入口控制权,这已经不是某个 API 支持不支持的问题,而是一整套平台治理问题。
为什么这个节点这么重要?
因为它让 PWA 的真正冲突第一次显得非常赤裸:
- 不是只有开发者在谈体验
- 不是只有浏览器团队在谈标准
- 监管也进来了
- 合规也进来了
- 平台入口解释权被直接摆上桌了
这说明 PWA 这条线早就不只是技术路线。
它已经是一条:
开放 Web 能不能获得更多平台地位
的路线。
05|它总像差一点,却又死不掉
如果只看这十几年,
PWA 好像一直都在一个很微妙的位置上:
- 好像很重要
- 又好像总差一点
- 经常被吹成未来
- 又经常被现实打脸
这会让很多人误以为:
它是不是就是一个永远半成品的方向?
可如果换个角度看,
你会发现 PWA 之所以一直不会死,
正是因为它背后承载的不是某个框架的命运。
它背后承载的是一种特别长期的冲动:
开放 Web 总想重新证明,自己不只是内容入口,也可以承接更重的应用入口。
只要这股冲动还在,
PWA 就不会真正死掉。
它可能一时被平台边界压住, 可能一时功能差一点, 可能一时在商业上不划算。
但它代表的那种愿望不会消失:
- 别完全被商店定义应用
- 别完全让平台决定入口
- 别完全让审核和抽成决定什么能活
所以 PWA 最适合被理解成:
开放 Web 对“应用入口”这件事的一次次反攻。
它不一定每次都赢。
但它也不会真正退出牌桌。
06|回头看,PWA 真正碰到的墙是什么?
回头看 PWA,
最不该只记住的,
是某个浏览器支持矩阵。
更该记住的是这句:
PWA 最深的冲突,不是功能,而是开放 Web 一旦太像 App,就会碰到平台对入口、支付和安全模型的控制。
所以 PWA 这条线最尴尬的地方,
从来不是“差几个 API 就圆满了”。
它真正尴尬的,是每往前像 App 一步, 就更像在逼平台回答一句它最不想回答的话:
如果 Web 也能安装、分发、更新、收钱,那 App Store 到底还剩下多少不可替代的权力?
问到这里,
PWA 就不再只是技术路线。
它会立刻变成入口路线、支付路线,最后变成平台治理路线。
编者注(事实核对):文中关于 PWA 与应用入口关系的论述,主要依据 Web App Manifest、web.dev 等官方技术材料对可安装 Web 应用形态的定义。关于 Apple 在欧盟 Home Screen web apps 问题上的反复与最终限定在 WebKit 之上的说明,主要依据 Apple Developer 在 DMA 相关支持文档中的公开表述。正文据此将 PWA 概括为“开放 Web 争取应用入口地位的长期路线”,属于在技术能力、平台边界和分发现实共同作用下的历史判断。
关键人物速览
- Apple Safari / WebKit 团队:理解平台如何谨慎决定 Web App 边界,绕不开他们。
- Open Web Advocacy 等倡议者:理解
PWA为什么会进入更公开的平台与监管争论,绕不开这类力量。 - Web 平台标准与浏览器实现者:理解
PWA为什么不是单一框架命运,而是一条长期平台路线,绕不开他们。
参考与延伸阅读
Update on apps distributed in the European Union
https://developer.apple.com/support/dma-and-apps-in-the-eu/Web App Manifest
https://www.w3.org/TR/appmanifest/Explore Progressive Web Apps
https://web.dev/explore/progressive-web-appsiOS 17.4 won't remove Home Screen web apps in the EU after all
https://9to5mac.com/2024/03/01/apple-home-screen-web-apps-ios-17-eu/