2016-01-13 71 views
2

我正在嘗試爲Firefox編寫一個插件。爲此,我使用Mozilla的「Addon-SDK」。Firefox插件 - 圖標不顯示

當我使用「jpm run」功能時,一切正常。但只要我將它打包到xpi並安裝它,圖標就不會顯示在工具欄中。這似乎是SDK中的一個錯誤。
我已經嘗試了其他博客文章的各種解決方法。

  • 編輯的package.json
  • 重命名爲 「圖標」
  • 移動到數據
  • 移動圖標根
  • 絕對路徑
  • 編輯在RDF
  • 調試運行Firefox的版本Index.js ...

這裏最有用:

Firefox add-on : extension icon not showing
https://github.com/mozilla-jetpack/jpm/issues/197

由於Firefox的插件43必須verifyed。我做到了。我也在about:config中禁用了該功能,所以我可以更快地嘗試新版本。仍然沒有運氣。

這是我在index.js代碼:根據答案,但仍然沒有工作

var button = buttons.ActionButton(
    { 
     id: "MorastLink", 
     label: "In den Morast", 
     icon: 
     { 
     "16": "./images/icon16.png", 
     "32": "./images/icon32.png", 
     "64": "./images/icon64.png" 
     }, 
    onClick: CopyToMorast 
    }); 

在這裏,我也試過,移動路徑,改變名稱,使用絕對路徑編輯...

這是我的package.json

{ 
     "title": "Morast", 
     "name": "morastaddon", 
     "version": "0.1.4", 
     "description": "An Addon to insert a \"Add to Morast\" button on distributer sites.", 
     "main": "index.js", 
     "author": "Lisa Austen", 
     "icon": "ressource://@morastaddon/data/images/icon16.png", 
     "icon64": "ressource://@morastaddon/data/images/icon64.png", 
     "engines": { 
     "firefox": ">=38.0a1", 
     "fennec": ">=38.0a1" }, 
     "license": "MIT", 
     "keywords": [ 
     "jetpack" 
    ] 
    } 

https://github.com/LAusten/MorastAddon.git

+0

[Firefox擴展,不顯示圖標](可能的重複http://stackoverflow.com/questions/32941591/firefox -extension-not-showing-icons) –

+0

我試過了。它沒有工作 –

回答

1

MDN,圖標路徑必須是相對於data文件夾:

  • 作爲一種資源:// URL指向您的附加的「一個圖標文件數據「目錄下,典型地使用self.data.url(ICONFILE)

  • 爲相對路徑構造:形式的字符串」 ./iconfile」,其中‘ICONFILE’是圖標文件開始的相對路徑在你附加的 「數據」 目錄

例子:

icon: 
    { 
    "16": "./images/icon16.png", 
    "32": "./images/icon32.png", 
    "64": "./images/icon64.png" 
    } 
+0

我在'index.js'中試過了,可惜它沒有工作。我在'package.json'中設置了圖標路徑,如下所示:[Addon SDK](https://developer.mozilla.org/en-US/Add-ons/SDK/Tools/package_json#icon)'「icon」 :「資源://@morastaddon/data/images/icon16.png」 –

+0

它適用於Firefox 43(使用GitHub存儲庫中的代碼和「./images」中的路徑)。你可以嘗試重新啓動瀏覽器,看看是否有幫助。 – cnnr

+1

奇怪的是,我在另一臺電腦上安裝了Firefox,並且它可以正常工作。相同版本的Firefox,唯一的區別是,我在這個版本上安裝了不少插件。 無論如何,感謝您的幫助。 –