基于Addon-SDK开发火狐扩展

本文介绍如何使用Addon-SDK在Windows环境下为火狐浏览器开发扩展。包括安装必要软件、创建扩展模板、修改功能代码及安装测试等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

火狐

版本:33.0

一,在Windows上安装

Addon-SDK

1,首先确定已经安装有Python,我电脑上安装的是Python 2.7.7:

C:\Users\Lenky>python --version
Python 2.7.7

2,Addon-SDK在这里 https://addons.mozilla.org/en-US/developers/tools/builder下载

进入到sdk解压目录,执行命令:

C:\Users\Lenky>cd D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17

C:\Users\Lenky>d:

D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17>bin\activate
Welcome to the Add-on SDK. For the docs, visit https://addons.mozilla.org/en-US/developers/docs/sdk/latest/

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17>

命令activate会修改一些使用Addon-SDK所必须的环境变量,后续操作都将在这里进行。

参考: https://developer.mozilla.org/en-US/Add-ons/SDK/Tutorials/Installation

二,采用Addon-SDK开发的简单

扩展

示例

继续在前面activate命令提示栏下执行命令:

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17>mkdir my-addon

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17>cd my-addon

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17\my-addon>cfx init
* lib directory created
* data directory created
* test directory created
* generated jID automatically: jid1-whxWY9a308x9KA
* package.json written
* test/test-main.js written
* lib/main.js written

Your sample add-on is now ready.
Do "cfx test" to test it and "cfx run" to try it.  Have fun!

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17\my-addon>

完成扩展插件的初始代码,下面就可以根据我们自己业务逻辑的需要对代码进行修改。这里仅做过测试,修改lib\main.js文件,加上如下代码:

var buttons = require('sdk/ui/button/action');
var tabs = require("sdk/tabs");

var button = buttons.ActionButton({
  id: "mozilla-link",
  label: "Visit Mozilla",
  icon: {
    "16": "./icon-16.png",
    "32": "./icon-32.png",
    "64": "./icon-64.png"
  },
  onClick: handleClick
});

function handleClick(state) {
  tabs.open("https://www.mozilla.org/");
}

接着保存下面三张图片到data目录:

icon-16.png 

icon-32.png 

icon-64.png 

之后在命令行里执行:

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17\my-addon>cfx run
Using binary at 'C:\Program Files (x86)\Mozilla Firefox\firefox.exe'.
Using profile at 'c:\users\lenky\appdata\local\temp\tmpuo8bc8.mozrunner'.

上面cfx run命令会打开一个新的火狐实例窗口,并且刚写的扩展也已经被加载了。

点击扩展按钮,即可打开网址: https://www.mozilla.org/

三,打包&安装在命令提示行按ctrl+c结束执行,再执行:

(D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17) D:\gitlab\ff-ext\addon-sdk-1.17\addon-sdk-1.17\my-addon>cfx xpi
Exporting extension to my-addon.xpi.

即可。

在火狐里按快捷键Ctrl+O或菜单选择:File -> Open File…在文件选择对话框里选择打包生成的xpi文件my-addon.xpi,根据提示选择Install安装即可。

参考: https://developer.mozilla.org/en-US/Add-ons/SDK/Tutorials/Getting_started

四,可以调整Firefox的某些参数,方便开发:

firefox的地址栏输入about:config回车,打开配置界面。

参数:javascript.options.showInConsole= true

作用:将chrome文件中的错误显示在Console里。

参数:nglayout.debug.disable_xul_cache= true

作用:关闭XUL缓存,这允许不重启而改变窗口以及对话的内容。这里,可以使用目录而不是Jar。但是Overlay改变后,overlay文档必须重载(这一项非常有用,修改uxl后不用重启窗口)。

参数:browser.dom.window.dump.enabled= true

作用:这将允许dump()函数输出到stdout里。参考window.dump函数。特权应用也可用nsIConsoleService。

参数:javascript.options.strict= true

作用:启用严格JavaScript错误提示,js出错调试可用。

参数:extensions.logging.enabled= true

作用:这将给出更多关于安装以及更新插件的日志信息。

参数:nglayout.debug.disable_xul_fastload= true (仅限Gecko 2.0+ (Firefox 4.0+))

参数:dom.report_all_js_exceptions= true

以上参数有些在你的配置项已经存在,可能设置的状态值不对,修改下即可。有些参数可能没有,需要你手动创建这些参数和值。只需要在list中右键-》新建-》布尔即可。

参考: http://blog.youkuaiyun.com/ugg/article/details/6759571

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值