2013-10-15 41 views
10

私はAdd-on SDKを使ってFirefoxアドオンを開発しています。 SDKを使用しているときに拡張機能が正常に動作していますが、.xpiファイルを作成してブラウザに手動で追加すると、拡張子アイコンは表示されません。Firefoxアドオン:拡張アイコンが表示されない

package.jsonファイルのアイコンパスを変更しようとしましたが、アイコンが表示されませんでした。

package.jsonファイル:

{... 
    "icon"  : "Phone-icon48.png", 
    "icon64"  : "Phone-icon64.png", 
...} 

ウィジェットパネルには、アイコンを表示するために使用:

WidgetPackage.Widget({ 
    label: "Phone Dial", 
    id: "phone_dial", 
    contentURL: data.url("images/Phone-icon19.png"), 
    panel: panel_name 
}); 

誰も私の問題を解決することはできますか?

ありがとうございます。 Addon SDK docsによれば

+0

わからないあなたが何を意味するか - アイコンは両方、アドオンマネージャでは、ウィジェットのために不足していますか?ウィジェットアイコンの場合、ファイルは実際にあなたのアドオンプロジェクトの 'data/images/Phone-icon19.png'にありますか? – canuckistani

+0

はい、アイコンはウィジェットには表示されませんが、拡張子が.xpiファイルを使用して追加された場合にのみ表示されます。 'cfx run'を使用して拡張機能を実行すると、アイコンが表示されます。電話アイコンイメージはデータディレクトリに存在します。 –

+0

私は同じ問題があります。そして、アイコンはアドオンマネージャに表示されます。 –

答えて

2

アドオンアドオンのアイコンを含むPNGファイルへのルートからの相対パス。デフォルトは "icon.png"です。

だからあなたのpackage.jsonは次のようになります。

{... 
    "icon"  : "data/images/Phone-icon48.png", 
    "icon64"  : "data/images/Phone-icon64.png", 
...} 
3

This may be a persistent bugThis thread reports a similar problem

Ah - ここが解決策です。 アドオンのディレクトリのルートにあるdataという名前のフォルダにアイコンを置き、ルートにあるas ifと呼んでください。

{... 
    icon: { "16": "./icon-16.png", "32":"./icon-32.png", "64": "./icon-64.png" }, 
...} 

これを実行すると、アイコンがツールバーに表示されます。それはあまり明確ではありませんが、一緒に物事をまとめると、you might deduce that from hereです。

0

A seemingly related issueは早く閉鎖し、まだそれはJPM 1.1.4とFirefox 48/50と回避策今日、私に

を起こりました:アイコンicon.png

  • 名前とルートディレクトリに置きアドオンの。
  • 書き込みはpackage.jsonで無"icon": ...エントリ(これinstall.rdfの中にありません<em:icon>
関連する問題