在MDN上,引入了短语“Add-on Manager-enabled XUL application”。
通过将包含插件的 XPI 文件拖放到 FireFox 窗口中,插件的小部件将安装在 FireFox 的插件栏中。
我还可以通过指定命令行选项“-app application.ini”来使用 Firefox 运行 XUL 应用程序。
由于 MDN 让我认为这两者并不相互排斥,我正在寻找一个简单的 4 步流程,其中第 1 步和第 2 步分别创建 XUL 应用程序和 XPI,第 3 步描述如何更改 XUL 应用程序或 XPI为第4步做准备,第4步是最后的整合。
我将从第 1 步和第 2 步开始,然后建议在第 3 步或第 4 步中需要完成的一些事情。
第 1 步:按照https://addons.mozilla.org/en-US/developers/docs/sdk/1.3/dev-guide/addon-development/implementing-simple-addon.html上的教程构建 XPI
第 2 步:按照https://developer.mozilla.org/en/Getting_started_with_XULRunner上的教程构建 XUL 应用程序
现在是第 3 步和第 4 步。它们应该包括通过添加代码来修改在第 2 步中构建的 application.ini:
[XRE]
EnableExtensionManager=1
它们还应该包括向prefs.js添加行以支持扩展管理器。他们可能需要通过添加类似于以下内容的代码将插件栏窗口元素添加到 XUL :
<toolbarpalette id="BrowserToolbarPalette">
<toolbarbutton
id="xfox-statusbarpanel" class="toolbarbutton-1 chromeclass-toolbar-additional"
label="&name;"
tooltiptext="&name;"
oncommand="toggleSidebar('xfox-sidebar');"
context="xfox-contextmenu">
</toolbarbutton>
</toolbarpalette>
我已成功使“启用附加管理器的 XUL 应用程序”(又名<TestApp
>)接受 XPI(又名<wikipanel
>)并尝试安装它,但它失败并显示错误消息:“ <wikipanel
> 无法安装,因为它与<TestApp version 1.0
>不兼容
[编辑] 我编辑了 INSTALL.RDF(对于我的 XPI)并添加了以下内容:
<em:targetApplication>
<Description>
<em:id>testapp@sample.xul</em:id>
<em:minVersion>0.0</em:minVersion>
<em:maxVersion>9.*</em:maxVersion>
</Description>
</em:targetApplication>.
扩展现在安装,但我在 jsconsole 中收到以下错误:
错误:小部件模块当前仅支持 Firefox。将来它将支持其他应用程序。请参阅https://bugzilla.mozilla.org/show_bug.cgi?id=560716了解更多信息。