Chrome扩展及应用开发(电子书)

http://www.ituring.com.cn/minibook/950

文档

官方

https://developer.chrome.com/extensions/contentSecurityPolicy

百度翻译

https://chajian.baidu.com/developer/apps/contentSecurityPolicy.html

https://chajian.baidu.com/developer/extensions/getstarted.html

内容脚本

能获取页面的DOM,监听事件

不能获得页面的js对象变量等

可以使用应用的资源,监听runtime发来的信息

一些行为收到限制:可以用的,注意接发消息的两个

内容脚本是可以选择性插入的,在manifest.json permission 里面用 正则表示

"all_frames":true, 可以插入页面的每个iframe

其他页面之间,发消息,也是通过runtime,但想页面发消息,必须通过 tabs

后台页面/事件页面

可以通过调用 runtime.getBackgroundPage 获得。

事件页面可能会被关闭,收到消息时再激活:

定期任务请使用 alarms api,

装载事件 runtime.onInstalled

卸载事件 runtime.onSuspend

消息传递

https://chajian.baidu.com/developer/extensions/messaging.html

chrome.runtime.sendMessage

单个消息。如果向您自己的应用发送消息,每个网页中都会产生 runtime.onMessage 事件;如果发送至另一个应用则产生 runtime.onMessageExternal 事件。注意,应用不能使用该方法向内容脚本发送消息。要向内容脚本发送消息,请使用 tabs.sendMessage。

chrome.tabs.sendRequest 和 chrome.extension.sendRequest 均被废弃,

只使用 chrome.runtime.sendMessage 和 chrome.tabs.sendMessage

alarms 使用 chrome.alarms API 安排代码周期性地运行或者在将来的指定时间运行。
browserAction 使用浏览器按钮可以在百度浏览器主窗口地址栏右侧的工具栏中添加图标。除了图标,浏览器按钮还可以有工具提示徽章弹出内容
commands 使用命令 API 添加快捷键,以便触发应用中的操作,例如打开浏览器按钮或向应用发送命令。
contextMenus 使用 chrome.contextMenus API 向百度浏览器的右键菜单添加项目。您可以选择您在右键菜单中添加的项目应用于哪些类型的对象,例如图片、超链接和页面。
cookies 使用 chrome.cookies API 查询和修改 Cookie,并在 Cookie 更改时得到通知。
extension chrome.extension API 包含任何应用页面都能使用的实用方法。它包括在应用和内容脚本之间或者两个应用之间交换消息的支持,消息传递中详细描述了这些内容。
i18n 使用 chrome.i18n 架构为您的整个应用或应用实现国际化支持。
idle 使用 chrome.idle API 检测计算机空闲状态的更改。
management chrome.management API 可以用来管理已经安装并且正在运行的应用或应用。
notifications 使用 chrome.notifications API 通过模板创建丰富通知,并在系统托盘中向用户显示这些通知。
pageAction 使用 chrome.pageAction API 在地址栏中添加图标。页面按钮代表用于当前网页的操作,但是不适用于所有网页。
pageCapture 使用 chrome.pageCapture API 将标签页保存为 MHTML。
permissions 使用 chrome.permissions API 在运行时而不是安装时请求声明的可选权限,这样用户可以理解为什么需要这些权限,并且仅在必要时授予这些权限。
power 使用 chrome.power API 修改系统的电源管理特性。
proxy 使用 chrome.proxy API 管理百度浏览器的代理服务器设置。该模块依赖于类型 API 中的 ChromeSetting 原型,用于获取和设置代理服务器配置。
runtime 使用 chrome.runtime API 获取后台网页、返回清单文件详情、监听并响应应用或应用生命周期内的事件,您还可以使用该 API 将相对路径的 URL 转换为完全限定的 URL。
storage 使用 chrome.storage API 存储、获取用户数据,追踪用户数据的更改。
system.cpu 使用 chrome.system.cpu API 查询 CPU 元数据。
system.memory 使用 chrome.system.memory API 获取内存信息。
system.storage 使用 chrome.system.storage API 查询存储设备信息,并在连接或移除可移动存储设备时得到通知。
system.display 使用 chrome.system.display API 查询显示器的元数据。
tabs 使用 chrome.tabs API 与浏览器标签页交互。您可以使用该 API 创建、修改或重新排列浏览器中的标签页。
tts 使用 chrome.tts API 播放合成的文字语音转换(TTS),同时请您参见相关的 ttsEngine API,允许应用实现语音引擎。
ttsEngine 使用 chrome.ttsEngine API 在应用中实现文字语音转换(TTS)引擎。如果您的应用注册了该 API,当任何应用或百度浏览器应用使用 tts 模块朗读时,它会收到事件,包含要朗读的内容以及其他参数。您的应用可以使用任何可用的网络技术合成并输出语音,并向调用方发送事件报告状态。
webNavigation 使用 chrome.webNavigation API 实时地接收有关导航请求状态的通知。
webRequest 使用 chrome.webRequest API 监控与分析流量,还可以实时地拦截、阻止或修改请求。
windows 使用 chrome.windows API 与浏览器窗口交互。您可以使用该模块创建、修改和重新排列浏览器中的窗口。
bidu 使用 chrome.bidu API 进行扩充自定义接口信息。如果当前的接口不能完整的满足您的需求,您可以向我们提出专门的功能接口申请。

Chrome扩展及应用开发的更多相关文章

  1. 手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单

    手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单   手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单 手把手教你开发Chrome扩 ...

  2. 【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序

    关于 chrome 扩展的文章,很久之前也写过一篇.清除页面广告?身为前端,自己做一款简易的chrome扩展吧. 本篇文章重在分享一些制作扩展的过程中比较重要的知识及难点. 什么是 chrome 扩展 ...

  3. ----转载----【前端工具】Chrome 扩展程序的开发与发布 -- 手把手教你开发扩展程序

    关于 chrome 扩展的文章,很久之前也写过一篇.清除页面广告?身为前端,自己做一款简易的chrome扩展吧. 本篇文章重在分享一些制作扩展的过程中比较重要的知识及难点. 什么是 chrome 扩展 ...

  4. chrome扩展(浏览器插件)开发实用教程

    原创文章,转载请注明出处. 作者:简体字丶冯; QQ:564372931 1.Chrome能搞这些事情 (1)     操作浏览器中打开的页面DOM 这能做什么哪?譬如说你想修改页面DOM(DOM是什 ...

  5. Chrome扩展开发之二——Chrome扩展中脚本的运行机制和通信方式

    目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制 ...

  6. 基于 webpack 的 chrome 扩展开发探索

    起 最近利用闲暇时间在进行一款 chrome 扩展 V2EX-HELPER 的开发(如果巧遇 V 友欢迎试用),今天把它彻底改成了用 webpack 打包依赖的模式,不由得感概 webpack 的强大 ...

  7. 手把手教你开发chrome扩展

    转载:http://www.cnblogs.com/walkingp/archive/2011/04/04/2003875.html 手把手教你开发chrome扩展一:开发Chrome Extenst ...

  8. 手把手教你Chrome扩展开发:本地存储篇

    手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单 手把手教你开发Chrome扩展二:为html添加行为 手把手教你开发Chrome扩展三:关于本地存储数据 HTML5 ...

  9. 手把手教你开发Chrome扩展三:关于本地存储数据

    手把手教你开发chrome扩展一:开发Chrome Extenstion其实很简单 手把手教你开发Chrome扩展二:为html添加行为 手把手教你开发Chrome扩展三:关于本地存储数据 HTML5 ...

随机推荐

  1. TF-IDF与主题模型 - NLP学习(3-2)

    分词(Tokenization) - NLP学习(1) N-grams模型.停顿词(stopwords)和标准化处理 - NLP学习(2) 文本向量化及词袋模型 - NLP学习(3-1) 在上一篇博文 ...

  2. 了解游戏编程与 AI

    噫语系列... 闲话 最近在重写我的一个 QQ 群机器人项目,并尝试将它改成更通用的结构,以方便在未来加入对 Wechat 和 Telegram 的支持. 在查资料的过程中,发现很多人认为一个群内多人 ...

  3. 【翻译】ASP.NET Core 入门

    ASP.NET Core 入门 原文地址:Introduction to ASP.NET Core         译文地址:asp.net core 简介           翻译:ganqiyin ...

  4. python中通过string类名获得实例

    原文:https://bytes.com/topic/python/answers/42866-how-create-object-instance-string Ksenia Marasanova的 ...

  5. 【WebService】——CXF整合Spring

    相关博客: [WebService]--入门实例 [WebService]--SOAP.WSDL和UDDI 前言: 之前的几篇博客基本上都是使用jdk来实现WebService的调用,没有使用任何框架 ...

  6. HL7 2.6 解析(XML)

    用途:检验化验(LIS)实验室设备数据交换解析. using System; using System.Collections.Generic; using System.Text; using Sy ...

  7. HTML5表单提交与PHP环境搭建

    PHP服务器使用xampp集成套件 路径 D:\xampp\htdocs\MyServer\index.php 访问 http://localhost/MyServer/index.php 能够正常显 ...

  8. zTree基本功能[core]

    zTree 是一个依靠jQuery实现的多功能"树插件".优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点. zTree v3.0 将核心代码按照功能进行了分割,不需 ...

  9. BZOJ4318 OSU!(动态规划+概率期望)

    设f[i][0/1]为考虑前i位,第i位为0/1时的期望得分(乘以是0/1的概率).暴力转移显然.前缀和优化即可. 但是这个前缀和精度无法承受,动不动就nan. 考虑增加一位的贡献.若之前后缀1的个数 ...

  10. Boosting&Bagging

    Boosting&Bagging 集成学习方法不是单独的一个机器学习算法,而是通过构建多个机器学习算法来达到一个强学习器.集成学习可以用来进行分类,回归,特征选取和异常点检测等.随机森林算法就 ...