fang5566
管理员
管理员
  • UID3719
  • 注册日期2005-03-07
  • 最后登录2026-10-16
  • 发帖数18516
  • 经验4874枚
  • 威望5点
  • 贡献值4332点
  • 好评度1118点
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 终身成就
阅读:4408回复:4

节选翻译:如何开发一个 Firefox 扩展

楼主#
更多 发布于:2014-06-17 11:27


基于 Add-ons SDK 开发的扩展
       Add-ons SDK 包含一系列简单的 API,你可以利用它们快速创建良好的 Firefox 扩展。这也我们推荐新加入开发人员使用的方式。特别是在你熟悉 Google Chrome 扩展或用户脚本的情况下,这种方式更易于使用。因为它剥离了 Firefox 中大多数的 XUL / XPCOM 基础组件,取而代之的是一个更为熟悉的 HTML 和 JS 工作环境。
       现阶段创建 SDK 扩展的方法是下载并设置好 SDK,接着在本地写好代码,最后用 SDK 附带的 cfx 工具打包为扩展(XPI 文件)。SDK 团队正在研究进一步简化这一过程,例如集成到 Firefox 的开发工具,这样你可以能直接在 Firefox 里快速创建扩展。
       你可以在这里了解 SDK 更多信息并获得帮助:

自引导型 (Bootstrapped) 扩展

       类似于 SDK 扩展,自引导型扩展安装时不需要重新启动浏览器,但缺点是无法轻松访问 SDK API 或沙盒,所有这一切都需要你手动来完成,比如添加或移除用户界面时需要跟踪窗口。不过我们现有的 JavaScript 模块也提供了各种有用的工具能帮到你,例如针对工具栏界面的 CustomizableUI.jsm 和针对 Firefox 常用组件的 Services.jsm。
       相比传统的扩展开发方式(参见下述 Overlay 扩展),它唯一缺少的就是那些覆盖层(overlay)。 相反,自引导型扩展使用的是 bootstrap.js 文件,它可以作为你所有代码的起点。除此以外,其他的一切你应该都很熟悉: install.rdf, chrome.manifest 和代码文件,这些都被打包在以 .xpi 为后缀名的 ZIP 文件内。
      除开 MDN 上自引导型扩展版块及其链接的页面,其他所有开发资源都和下述的 overlay 形式扩展一样。

Firefox for Android 的扩展

       Firefox for Android 的扩展有一些不同,考虑到用户界面是原生的而不是通过 XUL 实现,扩展对于修改界面的实现方式也有所不同,甚至受到一些限制。这也意味着它不支持 overlay 形式的扩展,所以你只能选择 SDK 和自引导型扩展。
       由于移动应用所使用的屏幕尺寸有限,浏览器需要尽可能将页面内容的面积最大化,这意味着扩展不允许添加按钮或工具栏到浏览器。不过 Firefox for Android 团队近期开发出的 Firefox Hub API 将允许扩展添加内容到主页面,如有需要你可以将扩展界面放在这里。
        
你可以在这里了解
Firefox for Android 扩展更多信息并获得帮助:

覆盖层 (Overlay) 形式的扩展

       Overlay 扩展属于传统的附加组件开发方式,如果你要创建复杂的覆盖层或有其他特定需要,你仍旧可以采用这种开发方式。但这类扩展安装时需要重新启动 Firefox,打断了你的整个工作流程,很烦人。所以你绝对要优先考虑采用 SDK 或自引导型扩展。
       你可以在这里获取扩展开发有关的帮助:

最新喜欢:

hzzhaiqihzzhai...
Firefox More than meets your experience
pcxfirefox
千年狐狸
千年狐狸
  • UID39042
  • 注册日期2012-06-22
  • 最后登录2018-01-15
  • 发帖数2539
  • 经验1263枚
  • 威望2点
  • 贡献值242点
  • 好评度133点
  • 最爱沙发
  • 忠实会员
  • 社区居民
1楼#
发布于:2015-02-18 23:25
fang5566:这个?https://wiki.mozilla.org/WebAPI/回到原帖
我是说扩展能访问的所有API
http://pcxfirefox.wordpress.com/
fang5566
管理员
管理员
  • UID3719
  • 注册日期2005-03-07
  • 最后登录2026-10-16
  • 发帖数18516
  • 经验4874枚
  • 威望5点
  • 贡献值4332点
  • 好评度1118点
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 终身成就
2楼#
发布于:2015-02-18 23:14
pcxfirefox:只是往上复杂了不知道怎么弄 从哪里可以获得所有的API什么的回到原帖
这个?https://wiki.mozilla.org/WebAPI/
Firefox More than meets your experience
yfdyh000
千年狐狸
千年狐狸
  • UID29079
  • 注册日期2009-06-07
  • 最后登录2025-09-23
  • 发帖数2263
  • 经验1391枚
  • 威望0点
  • 贡献值52点
  • 好评度141点
  • 社区居民
  • 最爱沙发
  • 忠实会员
3楼#
发布于:2015-02-18 22:24
以前有个网页版的Addons SDK我觉得挺不错的,上手曲线比较低。只是好像因为开发者用的很少,所以官方关掉了,感觉有点可惜。
pcxfirefox
千年狐狸
千年狐狸
  • UID39042
  • 注册日期2012-06-22
  • 最后登录2018-01-15
  • 发帖数2539
  • 经验1263枚
  • 威望2点
  • 贡献值242点
  • 好评度133点
  • 最爱沙发
  • 忠实会员
  • 社区居民
4楼#
发布于:2015-02-18 21:11
只是往上复杂了不知道怎么弄 从哪里可以获得所有的API什么的
http://pcxfirefox.wordpress.com/
游客

返回顶部