如何创建一个快速简洁的Firefox扩展?

19

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


请将以下与编程有关的内容从英语翻译为中文。请只返回翻译后的文本,而不要解释它。 - chakrit
在提问中加上+1,然后单独发布你的答案。 - Noah Goodrich
我以为你指的是Quick Basic,一种编程语言。 :) - Bill the Lizard
7个回答

20

预防措施:为了避免影响您的默认 Firefox 使用体验,请在新建的一次性测试账户上尝试以下提示。

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

firefox.exe -profilemanager
点击“Profile Manager”中的“创建配置文件”按钮,这将调用向导。给配置文件命名。使用“选择文件夹”按钮并将配置文件保存在一个名称恰当的文件夹中。这个文件夹是我们将要创建快速粗糙的Firefox扩展程序的地方。
第二步:切换到步骤1中创建的配置文件文件夹内的“extensions”文件夹。现在我们需要为Firefox扩展程序取一个全局唯一的名称。类似电子邮件的名称就足够了。例如,OneMinuteFirefoxExtension@ec29.com 就是扩展程序的一个好名称。在“extensions”文件夹下,创建一个文件夹,以所选择的唯一名称命名。
第三步:创建chrome.manifest和install.rdf文件。您可以复制并粘贴此处的示例,并适当修改名称和描述。
chrome.manifest:
content 1mffext chrome/

并安装.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 url(如chrome://1mffext/content/test.txt)进行访问。

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

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

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

我已经创建了一个Google Code项目,以分享按照上述步骤创建的代码。该代码与运行脚本可在Just a Minute Firefox Extension获取。

Sim-OnDemand-个人虚拟世界作为服务的启动器应用程序是使用此方法打包和分发的示例。


14

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

步骤2:将下载的文件提取到您的开发区域。

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


截至2011年,该链接已失效,显示服务已停用,但建议使用https://addons.mozilla.org/en-US/developers/tools/builder上的工具。 - Jason Antman

1

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

firefox -P My_test_profile -no-remote

通过这种方式,您可以同时运行两个不同的Firefox浏览器,其中一个用于测试扩展程序,而不会干扰您正常使用的那个浏览器。

0

0

有趣的信息。
现在来回答这个问题,我会说:创建一个Greasemonkey脚本(或Chickenfoot,或iMacros等)。
可能更受限制(例如无法更改FF UI),但适用于大多数需求。


0

以下是创建极简 Firefox 扩展的原因:

  1. 当您希望创建一个本地计算机(磁盘)上的基于浏览器的应用程序时,如果将应用程序结构化为扩展,则可以与文件系统交互以进行读写。
  2. 快速原型设计而不必担心 XmlHttpRequest 跨域问题。当您作为普通应用程序运行时,每次尝试 XmlHttpRequest 时都会弹出一个弹窗,用户会感到困扰。
  3. 很多时候,安装扩展会在“这会影响我的其他自定义设置吗?”方面引起很多焦虑。正在进行的扩展可以与配置文件一起分发,以便用户可以预览和测试它,而不必担心干扰默认的 Firefox 浏览体验。

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

它不会与普通的Firefox并行运行,而是创建一个备用配置文件,以便在保持常规Firefox打开的同时运行和重新启动Firefox。 - Robin Rodricks
但是您可以关闭常规的Firefox,然后使用便携式版本。 - Osama Al-Maadeed

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接