如何创建快速最小的Firefox扩展?

时间:2008-11-08 11:35:41

标签: firefox xul

开始开发Firefox扩展所需的最低基本设置是什么?

7 个答案:

答案 0 :(得分:20)

注意事项:为了防止弄乱您的默认Firefox体验,请在新创建的一次性测试帐户上尝试以下提示。

步骤1:创建新的Firefox配置文件。为此,您需要通过命令行选项调用Profile Manager:

firefox.exe -profilemanager

单击配置文件管理器的“创建配置文件”按钮,该按钮将调用向导。为配置文件命名。使用“选择文件夹”按钮并将配置文件保存在适当命名的文件夹中。这个文件夹是我们要创建快速而又脏的Firefox扩展的地方。

步骤2:将目录更改为步骤1中创建的配置文件文件夹中的“extensions”文件夹。现在我们需要为Firefox扩展名提供全局唯一的名称。类似电子邮件的名称就足够了。例如,OneMinuteFirefoxExtension@ec29.com将为扩展名提供足够好的名称。在“extensions”文件夹下,创建一个名称为刚刚选择的唯一名称的文件夹。

第3步:创建chrome.manifest和install.rdf文件。您可以复制粘贴样本,并更改​​名称,描述。

chrome.manifest用于:

content 1mffext chrome/

和install.rdf:

<?xml version="1.0"?>
<RDF:RDF xmlns:em="http://www.mozilla.org/2004/em-rdf#"
         xmlns:NC="http://home.netscape.com/NC-rdf#"
         xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
  <RDF:Description RDF:about="rdf:#$Fsv+Z3"
                   em:id="{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"
                   em:minVersion="2.0"
                   em:maxVersion="3.0.*" />
  <RDF:Description RDF:about="urn:mozilla:install-manifest"
                   em:id="1m-ff-ext@ec29.com"
                   em:type="2"
                   em:name="OneMinuteFirefoxExtension@ec29.com"
                   em:version="0.0.1"
                   em:description="One Minute FireFox extension"
                   em:creator="labsji "
                   em:homepageURL="http://labsji.wordpress.com">
    <em:contributor>Venkat83</em:contributor>
    <em:targetApplication RDF:resource="rdf:#$Fsv+Z3"/>
  </RDF:Description>

步骤4创建名为chrome的文件夹,并在文件夹中创建名为test.txt的文本文件。该文件夹中的文件可通过chrome网址访问,例如chrome://1mffext/content/test.txt

现在已经准备就绪。常规的html / javascript文件可用于创建所需的功能。

测试扩展: 调用firefox以使用上面创建的配置文件。

firefox.exe -profile <path of the newly created profile> -no-remote

我创建了一个googlecode项目来共享按照上述步骤创建的结果代码。代码和运行脚本可在Just a Minute Firefox Extension

处获得

Sim-OnDemand-个人虚拟世界即服务launcher application是使用此方法打包和分发的应用程序的示例。

答案 1 :(得分:14)

步骤1:使用Add-on Builder生成所有必需的文件。

第2步:将下载的文件解压缩到您的开发区域。

步骤3:在您的配置文件的扩展文件夹中根据下载的install.rdf文件中的em:id命名创建一个文本文件,将完整路径放入其中提取的文件然后重新启动Firefox(删除要卸载的文本文件)如果必要的话。)

答案 2 :(得分:1)

要使用不同的配置文件启动另一个firefox实例,您可以使用以下命令:

firefox -P My_test_profile -no-remote

通过这种方式,你可以运行2个不同的firefox并使用一个来测试扩展,而不会弄乱你经常使用的那个。

答案 3 :(得分:0)

有趣的信息。
现在回答这个问题,我会说:创建一个Greasemonkey脚本(或Chickenfoot,或iMacros等)。
可能会受到更多限制(例如在改变FF UI时),但对大多数需求都有好处。

答案 4 :(得分:0)

以下是有人想要创建最小的firefox扩展名的原因。

  1. 当您希望创建基于本地计算机(磁盘)驻留浏览器的应用程序时,如果应用程序的结构是扩展名,则可以与文件系统进行交互以进行读写。
  2. 快速原型设计,无需担心XmlHttpRequest跨域问题。当您作为普通应用程序运行时,只要尝试XmlHttpRequest,用户就会遇到弹出窗口。
  3. 很多时候,安装扩展会引起很多焦虑,“这会搞砸我的其他自定义吗?”。正在进行的工作扩展可以与配置文件一起分发,以便用户可以预览,测试它。不用担心搞乱默认的Firefox浏览体验。

答案 5 :(得分:0)

Add-On SDK使简单的附加组件开发变得更容易。 https://developer.mozilla.org/en-US/Add-ons/SDK

Mac / Linux的步骤:

答案 6 :(得分:-1)

我建议在便携版Firefox上进行测试。