2011-10-06 38 views
0

在我尋求解決Mozilla擴展平臺方面已經取得了相當大的進展,但我仍然在努力解決一些問題。希望有人能夠再次指向正確的方向:)重新包裝Mozilla插件生成器擴展文件的問題

好了,所以這裏的問題......我已經與在線插件建設者應用在這裏亂搞:https://builder.addons.mozilla.org/

大,這似乎是工作確定爲測試簡單的插件。但它包含了很多額外的垃圾 - 我沒有使用的東西,並不需要那裏。

現在,當我下載.xpi文件時,將其重命名爲.zip,並將其解壓縮以處理這些文件,當我將它重新打包爲zip - > xpi時,Firefox會告訴我包裹在我嘗試安裝。

我推斷這是因爲軟件包是「簽名」的東西,當我自己重新打包時,這不會發生。

無論如何。這太荒謬了......

所以我想用SDK在本地工作,然後以某種方式將SDK包含在目錄中。但它看起來像我需要安裝python和運行的東西,以生成一些文件第一等等等等等等....你在開玩笑嗎?我不能只編寫我的應用程序,然後包含SDK文件?

問題:

如何我可以創建基本的插件/與在線附加組件生成器擴展,然後在本地編輯文件,重新包裝,並使用它?

回答

1

使用SDK創建的插件目前未簽名(請參閱bug 613618)。在包清單中有一堆SHA256校驗和,但沒有任何驗證(可能它們是用於外部工具的驗證,我不知道)。所以這不是你遇到的問題。

最有可能的問題是,當你重新打包ZIP文件時,你沒有保留目錄結構。 install.rdf文件需要位於軟件包的頂層,而不是在某些子目錄中。您可以使用unzip -l mypackage.xpi進行檢查 - 它應該列出install.rdf而沒有任何目錄名稱。

通常,我會建議不要操縱XPI文件。通過刪除未使用的模塊,您可能可以節省下載大小100KB,很可能更少 - 安裝附加組件的人甚至不會注意到下載大小的差異。未使用的模塊對附加組件的性能影響不大。但是你冒着去除實際使用的東西的風險,可能是以一種不明顯的方式。一旦AMO開始repacking SDK add-ons automatically,他們將會用標準包來替換你的附加組件。

+0

再次感謝您的明確解釋! :) 是的,問題是我正在改變目錄結構和刪除的東西。我停止了這樣做,結果我安裝了SDK,並且實際上非常喜歡用shell進行調試。這只是比我習慣於簡單的Web應用類型實現更多的設置。 – delta9