我最近读过Mozilla 博客上的一篇文章介绍了对“旧版”扩展的支持即将被逐步取消有利于Web扩展。
我如何判断我安装的扩展是 WebExtensions 还是“旧版”扩展(如上述博客文章所定义)?
https://addons.mozilla.org/似乎没有显示该信息。
我知道我可以通过访问浏览 Windows 上的 FireFox 配置文件%AppData%\Mozilla\Firefox\Profiles
,在我的<profile>\extensions
文件夹中有一些.xpi
文件,它们只是 zip 文件。但是,如果我打开它们,我应该在里面查找什么才能确定它们是否是 WebExtensions?
我主要想知道如果开发人员不将我拥有的扩展更新/重写为 WebExtensions,我可能会丢失哪些扩展。如果有比我在扩展文件夹中检查更简单的方法,请告诉我。
答案1
如果 xpi 文件的根目录中有一个manifest.json
文件,那么它就是 WebExtension。https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Anatomy_of_a_WebExtension
每个 WebExtension 都必须包含一个名为“manifest.json”的文件。
如果 xpi 文件的根目录中有一个package.json
文件,那么它是一个遗留的附加组件。https://developer.mozilla.org/en-US/Add-ons/SDK/Tutorials/Getting_Started_(jpm)
该
package.json
文件包含您的附加组件的清单数据,不仅提供附加组件管理器中显示的有关附加组件的描述信息,还提供附加组件所需的其他元数据。我们计划不再让 Firefox 附加组件使用本文档中描述的技术。不要使用这些技术来开发新的附加组件。请改用 WebExtensions。
(通过查看附加组件页面的历史记录发现了后一个页面,直到我发现一个修订版本,其中包含指向构建附加组件的旧方法的链接(https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons$修订/1144290))
答案2
我找到了一种从网络浏览器中识别网络扩展的替代方法。
- 安装crx查看器网络扩展
- 转到附加组件,CRX 查看器
- 点击插件页面底部的“打开查看器”
- 点击“浏览”按钮
- 导航到您的扩展文件夹
- 选择一个 .xpi 文件并点击“打开”按钮
在左侧你可以找到那些可以识别XUL / webextension的文件:
- /manifest.json 或 /webextension/manifest.json (用于 Webextension) +
- /package.json(用于 Webextension)(一些 XUL 扩展也有此文件)
可选地:
- /chrome.manifest(大多数 XUL 扩展都有此文件)