当前位置: 代码迷 >> 综合 >> Google Chrome 扩展开发指南(Chrome Extensions HOWTO)
  详细解决方案

Google Chrome 扩展开发指南(Chrome Extensions HOWTO)

热度:61   发布时间:2023-12-09 06:59:39.0

Google Chrome 自去年9月发布以来,差不过就快一年了。Chrome 确实带来了一些新的变化,但这些变化仍不足使我抛弃目前的首选浏览器 FireFox。主要原因是 Google Chrome 没有我想要的两个功能(或扩展):SearchStatus (在不安装 Google Toolbar 和 Alexa Toolbar 的情况下,显示 Google PageRank 及 Alexa Rank 的信息)和 QuickJava (快速屏蔽 JavaScript 功能,—— 为了安全,除了访问 Google 帐户,我访问其他任何网站从来都是关闭 JavaScript 功能)。好在 Google 最近发布了 Chrome 的扩展开发文档以及准备了一些示例。我昨天试着做了一个 Chrome Extension,一切顺利。在这里稍总结一下。

一、Google Chrome 扩展 (Chrome Extensions) 开发的环境设置

  1. 安装Google Chrome 开发者版本(Chrome Developer Version)

目前 Chrome 的正式版本还不支持扩展功能,需要下载安装 Developer version.

启用 Chrome 的扩展特性(enable extensions for Chrome)。

在 Google Chrome 的图标上点右键,选择属性 (Properties),然后点 快捷方式 (Shortcut) 选项卡,在目标 (Target)字段 的最后面,加入参数 -enable-extensions parameter。如图所示:

http://www.xiaohui.com/dev/server/google-chrome-extension-development

安装 Python 2.6+

Google 的开发文档说,Python 3.0+ 不适合扩展开发。根据我的实验,推荐 Python 2.6.2,选择其中的 Windows x86 MSI Installer (2.6.2) 下载安装即可。安装结束后,建议手动更改 Windows 的系统环境变量设置,将 Python 的安装目录加入到 PATH 变量中,这样方便在命令行下使用。

安装 Chrome 扩展的打包工具: chromium_extension.py

Google Chrome 扩展文件分发使用 .crx 后缀。它基于 ZIP 格式,但添加了一些特殊的 HEADER 设置。chromium_extension.py 这个小工具能将 Chrome 扩展打包成 .crx 文件以供下载分发。

2009-07-12 更新: Google 最新发布了 dev version 3.0.189.0, 这个版本有一个重要的改变,就是不再依赖 Python 脚本 chromium_extension.py 来打包了。所以上面的第3点、第4点的步骤不再适用。

二、Google Chrome 扩展 (Chrome Extensions) 开发

  Chrome 扩展是基于 JavaScript。在 Chrome 的开发网站上,有一个简单的入门示例,很清晰明了:Chrome Extension HOWTO: Getting Started。

  另外,Chromium Team 也给出了几个完整的扩展代码。例如这个 Gmail Checker,能够在状态栏显示当前的 Gmail 未读邮件数量。这个扩展的源代码点这里下载。

  扩展的主程序文件一般名为 manifest.json,这是文件中有一个参数字段名为 "ID",新建的项目,这个值可以为空。在使用chromium_extension.py 打包时,如果没有设置这个参数,会自动生成一个唯一的随机ID。

  使用 chromium_extension.py 的命令如下:

chromium_extension.py --indir=path\to\extension --outfile=myextension.crx

  自 ver 3.0.189.0 以后,新的扩展直接使用 Chrome 的执行程序完成打包,方法如下:

  1. 关闭你的所有 Chrome 窗口
  2. 进入 Dos 命令行方式
  3. 键入命令:<path-to-chrome>/chrome.exe --pack-extension=<extension-folder>

  具体的说明,可参阅 Google 的文档 Packaging an extension.

三、Google Chrome 扩展 (Chrome Extensions) 集合

  自 Google 发布了扩展文档以来,有许多程序员开发了各种各样的扩展以增强 Chrome 的性能。下面这些扩展集合翻译自ChromeFans 的Google Chrome Extensions Compilation:

  1. PageRank Status Checker, 由 Andrew (http://www.ChromeFans.org) 开发

这个扩展在浏览器底部的状态栏内,显示当前网页的 Google PageRank 值。这个扩展对于个人站长进行 SEO 工作很有帮助。

AdSweep, 由  Charles L. (http://www.AdSweep.org) 开发

AdSweep 是一个非常用名的屏蔽广告的扩展,支持 Opera, Google Chrome, Chromium, Iron, Mozilla Firefox 3.1+ or Apple Safari. 现在也支持 Google Chrome 了。

Digg This, 由  Hyder Alamgir (AlamgirDesigns.com) 开发

顾名思议,将当前网页 Digg 一下。

Flashblock, 由  Lex1 (ruzanow.ru) 开发

使用快捷键 ALT+F 屏蔽 Flash。

Gmail as default webmail client, 由  Charles (adsweep.org) 开发

当于点击了网页中的 mailto 链接时,使用 Gmail 作为默认的邮件客户端。这里有一个测试页面.

Google Reader Notifier for Chrome, 由  Vasanth, (vasanth.in) 开发

这个扩展显示你的 Google Reader 帐户中未读的文章数量。

Cleeki, 由  cleeki.com 开发

该扩展实现了类似IE8中的Accelerators加速器功能,当高亮选中文本后会出现提示选项,用户可执行查找、翻译、搜索等相关操作,此外Cleeki可以将IE8加速器内容加载到Chrome。

Gmail Checker, 由  Chromium Team 开发

显示 Gmail 帐户中未读的邮件数量。

Subscribe in Google Reader, 由  Chromium Team 开发

快速订阅当前页面的 RSS FEED 至 Google Reader.

BuildBot Monitor, 由  Chromium Team 开发

开发者工具,显示 Chromium Build Bot 的 状态。

  从目前 Chrome 的开发进展以及提供的扩展质量来看,还不足以动心使我更换浏览器。只能偶尔作为测试网页使用。

四、删除 Chrome 扩展 (Uninstall Chrome Extension)

  在 Chrome 的地址栏内敲入 chrome://extensions,选中特定的扩展然后就点删除即可。

五、与 Google Chrome 扩展相关的其他资源

  1. 站内文章:Google Chrome 的内核引擎 WebKit 介绍 - WebKit 引擎比 Gecko 引擎更受程序员欢迎的原因,除了其引擎的高效稳定,兼容性好外,其源码结构清晰,易于维护,是一个重要的原因。
  2. 站内文章:Google 浏览器 Google Chrome 最新试用手记 - Chrome 的第一映象
  3. 站内文章:Google Chrome Source Code 源码下载 - Google Chrome、JavaScript V8 源码 SVN Checkout 地址
  4. 站内文章:推荐两个Firefox插件: SearchStatus + Session Manager - 简洁显示 Google PageRank 和 Alex Rank 的一个小工具
  5. 外部链接:Chromium Extensions Documentation - Chrome 扩展开发的参考文档、示例
  6. 外部链接:Google Chrome Extensions & Plugins - Chrome 的 Extensions, Bookmark, Plugins 下载
  相关解决方案