0

Firefox 在新的自托管扩展上显示来自 MDN 的过时信息

我正在尝试将我正在开发的 Firefox 扩展从托管在 MDN/mozilla.org 上切换为自托管。这涉及向 install.rdf 添加一个条目,指向我自己服务器上的 update.rdf。

但是,我发现如果给定的 Firefox 配置文件曾经安装过旧的托管在 MDN 上的版本,它将继续从 MDN 查找信息,而不仅仅是使用扩展的 install.rdf 中包含的信息. 这意味着 about:addons 中显示的扩展程序信息保持过时。

这是一个详细的演练:

  • 创建一个新的 Firefox 配置文件。
  • 手动安装最新版本的 Firefox 扩展,方法是将其放入 extensions/ 然后确认安装。此扩展是自托管的:它在 install.rdf 中设置了 updateURL。
  • 转到 about:addons 并确认显示的有关插件的信息是来自扩展的 install.rdf 的信息。(描述、创建者等)
  • 卸载扩展。
  • 通过插件管理器界面从 MDN 安装旧的非自托管版本的扩展。
  • 转到 about:addons 并确认显示的有关扩展的信息是来自 MDN 的信息。(描述、创建者等)搜索包含此版本扩展程序的所有文件,以确保显示的信息绝对不包含在其中,因此来自 MDN。
  • 卸载此版本的扩展。
  • 通过将其放入 extensions/ 并使用 Firefox 确认安装,再次安装新的自托管版本的扩展。
  • 转到关于:插件。请注意,尽管这是自托管版本,但显示的信息来自 MDN。具体来说,创建者和描述来源于MDN,而图标来源于install.rdf。

即使扩展程序已被卸载,Firefox 似乎也在缓存有关扩展程序的信息,并且一旦看到给定的扩展程序托管在 MDN 上,即使该扩展程序现在是自托管的,它也会继续从 MDN 获取信息。

除了在扩展的 install.rdf 中设置 updateURL 值之外,我还缺少一些步骤吗?这是 Firefox 中的错误吗?有解决方法吗?

4

1 回答 1

2

默认情况下,Firefox 从 AMO 为您的附加组件获取信息并覆盖 install.rdf 中的信息。

因此,如果您已将附加组件从 AMO 移至自托管,则仍会检索信息。

为防止这种情况,您可以设置首选项:

pref("extensions.YOUR_ADDON_ID.getAddons.cache.enabled", false);

这将阻止 Firefox 从 AMO 获取有关您的附加组件的信息。

它可能不会立即对您生效,但应在 24 小时内生效。

于 2012-10-16T03:20:15.083 回答