在package.json中,我尝试过使用和不使用resource://
,name
,GUID
,name
和GUID
,{ {1}}或name
,GUID
,{}s
,{}s
,相对和绝对,假设./(相对),/(根),/ data
我根本无法让插件管理器显示插件中的图标,即使在安装后也是如此。我甚至无法让jpm在@
中创建em:iconURL
。它根本就不存在。使用jpm在命令行上没有错误。控制台中没有错误,至少没有任何错误与我正在做的事情有关,至少没有明确解释它们与我正在做的任何事情有关。为了我试过的演示目的。不是一个实际的工作示例。对于我尝试的每种不同格式,我为所有大小的图标(16,32,48,64)添加了相同的格式URI。
install.rdf
package.json (demo snippet):
绝对没有任何MDN文章中描述的技术,也没有任何SO答案中的技术,甚至没有一次。在所有情况下,Firefox都会在启动时从网络中提取一个图标。
出于某种原因,XUL中的一项微不足道的任务(实际上是创建附加组件的最基本任务之一)似乎非常不一致,而且几乎不可能用jpm实现,每个人都会大约20岁之一30种不同的特定技术,仅适用于某些版本的工具或浏览器。
同样,我甚至无法在Action Button小部件中使用图标,但我会单独询问。似乎可以使用jpm run,但完全没有使用jpm xpi。
我在撰写本文时仅在几天前从...
"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",
},
...
使用了jpm 1.0.7
。
答案 0 :(得分: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.rdf
中构建一个正确的icon
行
<em:iconURL>resource://GUID/data/icon-48.png</em:iconURL>
<em:icon64URL>resource://GUID/data/icon-64.png</em:icon64URL>
答案 1 :(得分:0)
不要将package.json用于Addon图标。 在package.json文件附近放置icon.png和icon64.png文件 File icon.png必须具有48x48尺寸,icon64.png必须具有64x64尺寸。