0

package.json では、resource://. name/ GUID(相対) 、name/ (ルート)、/ GUIDdata .nameGUID{}s{}s@

インストール後でも、アドオンマネージャーにアドオンからアイコンを表示させることはできません。em:iconURLjpm で を作成することさえできませんinstall.rdf。それは単にそこにさえありません。jpm を使用したコマンド ラインにエラーはありません。コンソールにエラーはありません。少なくとも、私がしていることに関連するエラーはありません。少なくとも、私がしていることに関連していることを明確に説明しているわけではありません。私が試したことのデモンストレーション目的で。実際の作業例ではありません。試行したさまざまな形式のそれぞれについて、すべてのサイズのアイコン (16、32、48、64) に同じ形式の URI を配置しました。

package.json (demo snippet):

...
"id": "{GUID}",
"name": "my_addon",
"icons": {
    "48": "resource://@{GUID}/data/myaddon-48.png",
    "48": "resource://GUID/data/myaddon-48.png",
    "48": "resource://@my_addon/data/myaddon-48.png",
    "48": "resource://my_addon/data/myaddon-48.png",
    "64": "myaddon-64.png",
    "64": "/myaddon-64.png",
    "64": "./myaddon-64.png",
    "64": "data/myaddon-64.png",
    "64": "/data/myaddon-64.png",
    "64": "./data/myaddon-64.png",
},
...

MDNの記事やSOの回答で説明されている手法は、一度も機能していません。いずれの場合も、Firefox は起動時にネットからアイコンを取得します。

なんらかの理由で、XUL での些細なタスク (そして実際には、アドオンを作成する際の最も基本的なタスクの 1 つ) は、非常に一貫性がなく、jpm で達成することはほとんど不可能に思えます。ツールまたはブラウザーの特定のバージョンでのみ機能する手法。

同様に、アイコンを Action Button ウィジェットで動作させることさえできませんが、それについては別途お尋ねします。jpm run では動作するように見えましたが、jpm xpi ではまったく動作しませんでした。

執筆時点で、ほんの数日前jpm 1.0.7からプルされたものを使用しています。git master

4

2 に答える 2

1

私のコードに問題が見つかりました。

"icons": {
     ^ -- herein lies the problem

iconこれは特異なはずです。ファイルの場所を指定するためのさまざまな紛らわしいオプションが残っていますが、(現時点で) 最も単純でクリーンに機能するように見えるのは相対パスです。

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

次に、jpmスクリプト (lib/rdf.js:68-69,92) は、 にある値から適切なresource://行を作成します。install.rdficon

          <em:iconURL>resource://GUID/data/icon-48.png</em:iconURL>
          <em:icon64URL>resource://GUID/data/icon-64.png</em:icon64URL>
于 2016-07-04T12:09:43.000 に答える
0

アドオン アイコンに package.json を使用しないでください。icon.png および icon64.png ファイルを package.json ファイルの近くに配置します。 ファイル icon.png は 48x48 の寸法である必要があり、icon64.png は 64x64 の寸法である必要があります。

于 2016-07-03T22:51:57.050 に答える