在当前的 Firefox 开发人员版本 (53.0a2) 中,尝试安装多项目 xpi 失败,并显示 xpi 文件似乎已损坏的错误。浏览器控制台将问题识别为未知的 xpi 类型(即多项目 xpi 的类型 32 现在变得未知)。
我们读:
// Map new string type identifiers to old style nsIUpdateItem types
// Type 32 was previously used for multipackage xpi files so it should
// not be re-used since old files with that type may be floating around.
const TYPES = {
extension: 2,
theme: 4,
locale: 8,
dictionary: 64,
experiment: 128,
};
正如评论所述,用于多项目 xpi 类型的类型 32 已从代码中删除。
但是,我找不到任何文档表明多包扩展类型被单独或早于以前支持的附加 SDK 本身被弃用。此外,网页:
扩展打包:https ://developer.mozilla.org/en-US/Add-ons/Extension_Packaging 不到一个月前更新了以下更新戳:最后更新者:wbamberg,2017 年 1 月 10 日,3:51:下午 23 点
该页面有一个“多项目扩展 XPI”部分;尽管从最新代码中删除了上述内容,但本文档部分继续说明如何创建多项目 xpi 文件。请注意,实际遵循该方向或尝试迁移旧版附加组件的开发人员将无法自签名附加组件或关闭当前标准 Firefox 构建中的签名检查;因此他们必须使用开发者版本的 Firefox,但当前的开发者版本的 Firefox 不支持这样的插件。
关于多项目扩展插件,这里的实际意图是什么?例如,它们是否在附加 SDK 的其余部分之前被单独弃用?我们可以使用新的字符串标识而不是整数,这在上面的代码注释中暗示“将新字符串类型标识符映射到旧样式 nsIUpdateItem 类型”?