在Chrome
最近一次更新中(2021-08-03),有一条改动:
移除跨域iframe中的alert、confirm、prompt调用
Chrome
对此的解释是:网页内嵌的第三方页面弹窗可能让用户误以为这是当前页面弹出的弹窗,从而带来隐私风险。
如果从开发者的角度看待这条改动,显然是个breaking change
。
全球不计其数的网站使用alert API
弹出弹窗,这其中有相当一部分会作为iframe
内嵌于其他网站中。
这条改动使得这部分数量庞大的网站的提示功能在Chrome
浏览器下完全失效。
是什么样的勇气让Chrome
敢做出这样的决定?
67.14%市场占有率的Chrome
轻蔑一笑,说:
垄断,真的可以为所欲为
本文我们来聊聊Google
如何利用产品与技术使其保持垄断地位,赚取超额收益的。
用户隐私背后的秘密
不知道你在用什么浏览器?
如果多试几款浏览器,就会发现:不同浏览器对保护用户隐私的态度是有细微区别的。
保护用户隐私意味着减少浏览器对用户行为的追踪,其触动的是庞大的基于用户行为分析推送个性化广告的市场。
Safari
作为最早全面实行禁用第三方cookie的浏览器,一方面是苹果对用户隐私一贯的重视态度。另一方面,想必因为苹果营收的大头并不来自基于个性化推送的广告。
毕竟,死道友不死贫道。
而Google
收入80%以上来自基于个性化推送的广告。所以,在保护用户隐私方面,并没有友商积极。
从这里我们可以看出,开发者眼中的API
:
SameSite=None
背后是巨大的收益博弈。
Google
显然精通此道。所以,让技术与产品为垄断服务就成为需要长期践行的理念。
炼气期
彼时Google
还未修炼大成,各种仙法还略显生疏。我们称这一时期为其垄断的炼气期。
在这一时期,Google
利用自身产品的市场领导地位,强制要求必须使用Chrome
才能打开应用。
比如Google Hangouts
(一款跨平台即时通信应用)
以及大名鼎鼎的Google Earth
。
可能有些人会辩解:这是因为这些应用需要某些高级API
,其他浏览器没实现。
但是在19年,基于Chromium
内核的Edge
浏览器无法使用最新YouTuBe
。
“我和你Chrome
使用一样的内核,你说我太low
不能加载最新的YouTuBe
?大兄弟,会不会太明显了点儿”
尴尬的是,把Edge
的UA
改成Chrome
就能用了,你品,你细品。
这一时期Google
的垄断技术还稍显稚嫩,容易被人识破。
筑基期
到这一时期,Google
开始发挥技术的力量,做到:
事儿是我做的,锅得友商来背
从18年开始,用户发现:用FireFox
打开YouTuBe
很慢。
怎么解决呢?换了Chrome
就好了。
用户心里想:没有对比就没有伤害,FireFox
团队的性能优化做的真low
,Chrome
粉了!
实际原因是什么呢?原来YouTuBe
使用的Polymer
框架底层依赖已被废弃的Shadow DOM v0 API
,该API
仅Chrome
实现了。
要让FireFox
正常使用YouTuBe
,只能添加相应插件:
YouTuBe
这波逆标准反向操作为Chrome
带来多大性能优势呢?大概比友商快5倍。
到这一步,Google
的垄断之路算是登堂入室了。
结丹期
强制让用户做出选择太low
,要潜移默化的让用户觉得Chrome
才是浏览器中集性能、体验于一身的王者。
于是,有了筑基期的经验,Google
总结出一套方法论:
产品层面容易让人抓住把柄,还得在技术上苦下功夫
仗着自己产品的市场领导地位,这些年经常看到类似提问:
用户:“Edge
上用谷歌会议
有bug
”
这个问题是在微软Edge
问答社区提的,显然用户认为:这是需要Edge
修复的问题。
更别提老对手FireFox
。FireFox
团队成员发现,Google
全家桶产品中,总会时不时出现些只在FireFox
复现的bug
。
当给Google
反馈后,对方会回复:“感谢反馈,我们修复后会发布的。”
当这样的问题反复出现,用户就会质疑浏览器的稳定性,毕竟我用FireFox
打开谷歌会议
出现bug
,但是用Chrome
打开就没bug
,这难道不是你FireFox
的问题?
总结
对于前端开发者群体,多半是乐意看到Chrome
一统天下。毕竟谁也忘不了曾经被IE
支配的恐惧。
但是别忘了,IE
当初脱离标准API
,形成自己的API
规范的初衷,同样是为了垄断浏览器市场。
高举规范、开源(chromium
)的屠龙勇士Chrome
,是不是已经悄然变为巨龙了呢?
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。