【问题标题】:Problems Repackaging Mozilla Addon Builder Extension Files重新打包 Mozilla Addon Builder 扩展文件的问题
【发布时间】:2011-10-07 13:55:55
【问题描述】:

在探索 Mozilla 扩展平台方面取得了相当大的进展,但仍在努力解决一些问题。希望这里的人能再次为我指明正确的方向 :)

好的,这就是问题所在...我一直在搞乱在线插件生成器应用程序:https://builder.addons.mozilla.org/

太好了,这似乎可以用于测试简单的插件。但它包含很多额外的垃圾——我不使用也不需要的东西。

现在,当我下载 .xpi 文件,将其重命名为 .zip 并将其解压缩以处理文件时,当我将其重新打包为 zip -> xpi 时,Firefox 在我尝试安装时告诉我该包已损坏.

我推断这是因为包裹是“签名”或其他东西,当我自己重新打包时,这不会发生。

随便。这越来越荒谬了......

所以我想使用 SDK 在本地工作,然后以某种方式将 SDK 包含在目录中。但看起来我需要安装 python 并运行一些东西才能首先生成一些文件等等等等等等……你在开玩笑吗?我不能只编写我的应用程序,然后包含 SDK 文件吗?

问题:

如何使用在线插件生成器创建我的基本插件/扩展,然后在本地编辑文件,重新打包并使用它?

【问题讨论】:

    标签: firefox firefox-addon firefox-addon-sdk


    【解决方案1】:

    使用 SDK 创建的加载项当前未签名(请参阅 bug 613618)。软件包清单中有一堆 SHA256 校验和,但没有任何东西可以验证它们(也许它们是为了通过外部工具进行验证,我不知道)。所以这不是您遇到的问题。

    最可能的问题是,当您重新打包 ZIP 文件时,您没有保留目录结构。 install.rdf 文件需要位于包的顶层,而不是某些子目录中。您可以使用 unzip -l mypackage.xpi 检查它 - 它应该列出 install.rdf 而没有任何目录名称。

    一般来说,我建议不要操纵 XPI 文件。通过删除未使用的模块,您可能能够节省 100 kB 的下载大小,很可能更少 - 安装您的附加组件的人甚至不会注意到下载大小的差异。未使用的模块对附加组件的性能影响为零。但是您可能会以不明显的方式删除实际使用的东西。一旦 AMO 启动 repacking SDK add-ons automatically 他们无论如何都会用标准包替换你的附加组件。

    【讨论】:

    • 再次感谢您的明确解释! :) 是的,问题是我正在更改目录结构并删除内容。我不再这样做了,我最终安装了 SDK,实际上我真的很喜欢使用 shell 进行调试。它只是比我习惯于简单的网络应用类型实现更多的设置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-21
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多