在去年 5 月,Mozilla 就曾发文表示 Firefox 将支持 Google 的 Manifest V3(MV3)规范,以保持兼容性并支持扩展跨浏览器开发。在今年 5 月,Mozilla 则是宣布已在 Firefox 浏览器的开发版本中引入了 Manifest V3 的预览版本,并计划在 2022 年底引入对 Manifest V3 扩展的正式支持。
![]()
如今真的到了年底,Mozilla 也按预期公布了下一阶段的计划。从 2022 年 11 月 21 日开始,浏览器扩展的开发者可以将 Firefox Manifest V3 兼容的扩展上传至 addons.mozilla.org(AMO),并将其签名为 MV3 扩展。尽早签名 MV3 可以让开发者开始在 Firefox Nightly 上测试扩展的各项功能,以确保可以顺利过渡到 Firefox MV3。
Mozilla 还计划于 2023 年 1 月 17 日在 Firefox 109 稳定版中正式启用对 MV3 的支持。随着时间的推移,以及收集到的反馈,Mozilla 也会逐步修改 MV3。对 MV2 的支持将在可预见的未来继续保留,不过在 2023 年底,Mozilla 将对 MV3 进行评估,可能会将弃用 MV2 的支持纳入考量中。
Manifest V3 代表了扩展平台自十年前推出以来最大的转变之一。使用 Manifest V3 的扩展将在安全性、隐私和性能方面获得增强。但 Manifest V3 却在一定程度上对广告拦截、隐私扩展产生了很多不利影响,在 Manifest V2 中有一个名为 WebRequest 的 API 允许扩展程序拦截传入的网络数据,并在相应的内容在浏览器上显示之前就对其进行处理/过滤。
然而在 Manifest V3 中,Google 使用 declarativeNetRequest API 取代了 WebRequest API。这一变化使得这类扩展会面临毫无用武之地的尴尬处境。因此 Mozilla 将在 Firefox 中保留 WebRequest API,以确保扩展在提供它们所设计的功能方面不受限制。Mozilla 同样也会实施 declarativeNetRequest API,并在后续版本中继续扩展对 MV3 的兼容性。
![]()
MV3 还会带来了一个用户界面上的变化,即新添加一个 Unified Extensions 按钮(已在 Firefox Nightly 上使用)。这可以让用户直接控制哪些扩展可以访问哪些特定的网站。
用户能够检查、授予或撤销 MV3 扩展对任何网站的访问。MV2 的扩展也会显示在按钮界面,但无法使用对应的权限访问功能。