在去年 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 的扩展也会显示在按钮界面,但无法使用对应的权限访问功能。