查看原文
其他

和谷歌一样,Mozilla也在期待苹果终结Webkit规则

前端之巅 2023-04-28


作者|Thomas Claburn
译者|王强
策划|李冬梅

根据最新消息,考虑到苹果准备取消对竞争对手在 iOS 中使用 WebKit 浏览器引擎的限制,Mozilla 已经开始为这一天的到来提前做准备了。

Mozilla 几年前就做过了类似的实验,但是结果在当时并没有公开出来。时过境迁,2022 年 10 月 Mozilla 在存放 Firefox iOS 版代码的 GitHub 存储库中发布了一个问题,其中包含了一条对 GeckoView 的引用,而 GeckoView 是 Firefox 的 Gecko 渲染引擎的包装器。

根据当前的苹果 AppStore 指南,iOS 上的第三方浏览器应用程序必须使用苹果自己的 WebKit 浏览器引擎。因此,Mozilla 目前是无法通过 iOS 的 AppStore 发布使用 Gecko,而非 WebKit 引擎的 Firefox 版本的。

媒体之前也报道,Mozilla 并不是唯一一家期待 iOS 平台 AppStore 商店可以带来更利于浏览器市场竞争的规则的企业。除了 Mozilla 之外,谷歌已经开始为 iOS 平台开发基于其 Blink 引擎的 Chrome 版本。



主要的浏览器制造商——苹果、谷歌和 Mozilla——都有自己的浏览器渲染引擎。苹果的 Safari 基于 WebKit;谷歌的 Chrome 及其开源 Chromium 基金会基于 Blink(该引擎十年前从 WebKit 分叉而来);Mozilla 的 Firefox 基于 Gecko。

微软在当年的 Internet Explorer 中使用了自己开发的 Trident 渲染引擎,并在旧版 Edge 中开发了一个名为 EdgeHTML 的 Trident 分支。但自从这家公司将其 Edge 浏览器改为基于 Chromium 代码开发以来,Edge 一直依赖于 Blink 引擎。

浏览器渲染引擎负责在屏幕上渲染文本和图像。当浏览器工程师添加新功能或支持新的 API 时,他们通常通过添加渲染引擎代码来实现目的,这从各种 Blink 的增强特性也可以看出来。

有时苹果、谷歌和 Firefox 会就新功能达成一致并共同努力解决问题,例如弹出菜单这一特性就是个例子。其他时候,三大浏览器制造商会产生分歧,结果各自的代码库走上不同的路线。

Safari 的特性开发一直落后于 Chrome 和 Firefox。然而,苹果似乎意识到了监管机构带来的风险,并向 WebKit 团队增加了更多员工以缩小浏览器的能力差距。

如果苹果确实允许其他厂商在 iOS 生态系统中使用其他浏览器引擎,谷歌和 Mozilla 将能够通过这些浏览器的桌面版本中积累的显著技术优势来与 Safari 竞争。

开发者游说团体 Open Web Advocacy 去年发布了一份报告 Bringing Competition to Walled Gardens,详细阐述了苹果的 WebKit 限制所带来的后果。它将苹果的限制描述为反竞争的自我偏好。



Web 平台测试仪表盘显示在各个浏览器中的失败数量

“苹果正在阻止可互操作的、基于通行标准的 Web 技术成为苹果和谷歌提供的原生私有生态系统的可行替代方案,”该组织的报告给出了这样的结论。

“在缺乏竞争的情况下,苹果自己的浏览器对 Web 应用的糟糕支持状态会把开发者和用户推向 AppStore 的封闭生态系统。”

虽然前述 GitHub 问题中提到的,用于切换到 GeckoView 的 Firefox for iOS 设置页面可能只是用于 Mozilla 内部的浏览器测试用途,但 Mozilla 的脚步似乎不止于此。对这个 GitHub 问题的简短公开讨论表明,Mozilla 已经预料到苹果的规则可能会发生变化——这是 Mozilla 和其他公司通过持续的监管游说寻求的结果。

12 月 12 日,一位开源贡献者询问这是什么版本,Mozilla 的高级软件开发人员 Laurie Marceau 回答说这是“针对不在这个代码库中的一个次要项目”。

这位开源贡献者随后回复道,“谢谢,希望欧盟赶快落地相关法规,这样我们就可以在 iOS 上拥有好用的 Gecko Firefox 了。”

Marceau 的回应是一个竖起大拇指的表情符号。Marceau 对媒体的进一步说明请求没有回应。Mozilla 对媒体的询问没有立即回应,但表示他们稍后可能有话要说。

去年 12 月 13 日,有报道称苹果正准备在 iOS 17 中允许第三方应用商店上线——该版本预计在 2023 年第三季度发布——从而遵守欧洲数字市场法案的要求。欧盟的这些规则——以及其他监管机构提出的相关担忧——看起来可能会迫使苹果放弃其对 iOS 平台上 WebKit 的相关限制要求。

然而,苹果并未就此做出公开承诺,也未回应媒体的置评请求。

这不是 Mozilla 第一次为 iOS 准备基于 Gecko 引擎的 Firefox 版本了。Mozilla 前平台工程师 Ted Mielczarek 在 Twitter 上指出,他曾在 2010 年和 2015 年两次参与 Gecko 引擎到 iOS 平台的移植工作。

Mozilla 从未要求法院强制苹果在 iOS 上分发基于 Gecko 引擎的 Firefox 版本——这会是一场代价高昂的法律战争,而且它可能并不会赢。但最近,它在 2022 年 9 月的一份题为“五大技术花园围墙:为什么浏览器对互联网至关重要,以及操作系统如何阻碍它们的发展”的报告中表达了公众对苹果 WebKit 规则的反竞争后果的担忧。

如果欧盟数字市场法案产生预期的效果,到今年年底这种技术花园围墙将会减少一些。但根据过去的经验,我们也不能太早开香槟。

在一封电子邮件声明中,Mozilla 发言人说:“我们遵守苹果的 iOS 应用商店政策,只是在做一些探索性工作,以了解如果这些政策发生变化,iOS 上基于 Gecko 引擎的浏览器将会面临的技术挑战。我们希望人们可以自由使用他们所选择的浏览器,可以自由选择浏览器背后所使用的引擎,我们希望这样的一天能尽早到来。”

声明:本文为 InfoQ 翻译,未经许可禁止转载。

原文链接:

https://www.theregister.com/2023/02/07/mozilla_google_apple_webkit

今日好文推荐

JavaScript框架太多了?相反,是太少了

HarmonyOS ArkUI 框架的实现原理和落地实践

探索 Android 14:首个开发者预览版的新功能与特性

写了3万行SwiftUI生产代码后的经验:凡事皆有利弊

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存