为什么旧版附加组件与新版 Firefox 不兼容?

为什么旧版附加组件与新版 Firefox 不兼容?

我从小就遇到这个问题。为什么会这样?Firefox 的哪一部分发生了变化,导致它与比新版本早 0.0.1 版本的附加组件“不兼容”。
这真的让我很烦恼,因为每次它(该死的)自我更新时,我都必须重新安装所有附加组件(大约 40 个)。
我已经禁用更新并将其关闭,不再谈论更新。除了上述问题之外,chrome 有这个问题吗?如果没有,我会爱上它并永远离开 Firefox...!

答案1

这是因为创建 Firefox 附加组件的旧方法相当复杂,但结果更强大,融合的附加组件。没有明确定义的附加组件 API,有时附加组件开发人员使用的代码与浏览器本身用于渲染元素和 UI 的代码相同。

由于这种依赖性以及缺乏特定的附加组件 API,开发人员需要在每次发布新版 Firefox 时验证其附加组件是否正常工作。这曾经非常痛苦。另一方面,(谢天谢地?)没有像当前发布周期那样频繁的更新。

Chrome 改变了一切,从发布周期到插件开发流程。Chrome 引入了基于 JavaScript 和其他开放标准、定义明确且简单的扩展 API,并且独立于浏览器架构和代码库。大多数稳定的 API 几乎不会随时间而改变,因此开发人员无需在每次发布新版本时验证其插件。

Firefox 团队遵循了这一做法,并推出了喷气背包,从而简化了附加组件的开发流程。现在,Firefox 团队会自动检查即将发布的新版本的兼容性问题,并在检测到任何问题时提前提醒附加组件开发人员。这为开发人员提供了足够的时间来更新他们的附加组件。

据我所知,大多数插件开发人员已经迁移到喷气背包,但其中一些仍在使用旧方式。

(PS:另请阅读本文

答案2

这样做的目的是,当第三方扩展无法适应新版本中的更改时,您不必责怪 Firefox。

您可以“破解”扩展程序以更改其兼容的版本。请注意,这可能会暴露错误或其他奇怪的意外行为,或者扩展程序可能会使 Firefox 崩溃或根本无法工作,并且如果扩展程序的作者更新了扩展程序,您可能必须重新进行更改。

下载扩展的副本(“.xpi”文件)到您的计算机。

提取(解压).xpi 文件。它只是一个带有 .xpi 扩展名的压缩文件,因此您应该能够使用 unzip 或 Stuffit-expander(在 Mac 上)之类的程序来提取它。

使用文本编辑器(例如记事本)打开“install.rdf”文件。找到类似这样的标语,其中显示“maxVersion”数字(本例中为 2.0,但可能因扩展名而异):2.0

将“2.0”更改为“3.0.*”或任何您需要的数值(* 表示对发布版本的任何小更新)。这告诉安装程序该版本可以与 Firefox 或 Thunderbird 的相应版本号一起安装。

或者,为了表明您修改了扩展以供自己私人使用,您还可以编辑描述扩展的作者/贡献者和版本的行。将您所做的更改保存到 install.rdf 文件中。

创建一个 zip 存档,其中包含原始 .xpi 文件中的所有文件,包括您修改的 install.rdf 文件。将其重命名为“myExt.xpi”或任何您喜欢的名称。这里的关键是使用“.xpi”作为文件扩展名。

强烈建议:在安装扩展程序之前,对您的配置文件文件夹或至少配置文件文件夹内的“extensions”文件夹(其中包含已安装的扩展程序)进行临时备份。这样,如果出现问题,您可以轻松恢复更改。

最后,安装扩展:如果是 Firefox 扩展,请从 Firefox 打开 .xpi 文件,然后就可以安装了。如果是 Thunderbird 扩展,请通过“工具 -> 附加组件”菜单进行安装。

来源(以及您应该做的进一步阅读):http://kb.mozillazine.org/Editing_an_add-on_to_change_its_compatibility

相关内容