我正在使用 Add-on SDK 开发 Firefox 插件。 .我更改了我的 package.json 文件以包含 32x32 图标和 64x64 图标的条目。
{
...
"icon": "icons/icon-32.png",
"icon64": "icons/icon-64.png",
...
}
此外,我将 icon-32.png 和 icon-64.png 放在目录
icons
中。运行前在我的包目录中 cfx xpi
包目录里面。图标从
Tools > Add-ons
正确显示在插件管理器中,但安装对话框仍然使用拼图图标。我自托管 Firefox 附加组件。
起初,我认为可能是因为我还没有对 xpi 文件进行签名,但我注意到还有许多其他加载项没有签名但在安装对话框中仍然有正确的图标。
我还认为可能是因为图标未位于 xpi 文件中的正确位置,或者可能是附加 SDK 未正确生成 install.rdf,但我解压缩了 xpi 并发现 cfx已将图标放在根目录中,并将它们重命名为默认名称(icon.png 和 icon64.png),并省略了 install.rdf 中的文件名(将它们指向默认图标)。
如何更改安装图标?
只有在使用 Firefox 托管时才能更改安装图标吗?
最佳答案
安装对话框不从包中获取图标,它使用网页提供的信息。您的网页需要use InstallTrigger
开始安装,沿着这些路线:
function install(link)
{
params = {};
params[link.getAttribute("addonName")] = {
URL: link.href,
IconURL: link.getAttribute("iconURL")
};
InstallTrigger.install(params);
}
你的链接看起来像这样:
<a href="foo.xpi" addonName="Foo" iconURL="foo.png"
onclick="install(this); return false;">
Install
</a>
请注意,它仍然必须是一个链接 - 如果用户禁用了 JavaScript,您的
install()
函数不会被调用。用户只需点击链接即可开始安装。
关于firefox-addon - 更改 Firefox 插件安装图标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9207033/