【问题标题】:Changing Firefox addon install icon更改 Firefox 插件安装图标
【发布时间】:2012-03-01 16:44:36
【问题描述】:

我正在使用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 托管时更改安装图标吗?

【问题讨论】:

    标签: firefox-addon firefox-addon-sdk


    【解决方案1】:

    安装对话框不使用软件包中的图标,它使用网页提供的信息。您的网页需要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() 函数将不会被调用。用户只需点击链接即可开始安装。

    【讨论】:

    • @user198989:除了我刚刚修复的缺少引号 - 是的,我确信它有效(刚刚尝试过)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-18
    相关资源
    最近更新 更多