Chrome 拓展开发系列:什么是 Chrome 拓展?

文章目录

  • Chrome 拓展(Chrome Extension)是什么
  • 为什么使用 Chrome 拓展?
    • 个性化浏览体验
    • 提高工作效率
    • 改善隐私和安全
    • 创新新功能
  • 发展历史
    • 2009 年:初版发布
    • 2010 年:稳步增长
    • 2013 年:Chrome App 和扩展合并
    • 2014 年:Material Design 和更多 API
    • 2016 年:Manifest V3 计划
    • 2021 年:Manifest V3 正式发布
    • 2022 年:持续发展
  • 为什么选择 Chrome 拓展而不是其它浏览器拓展
    • 用户基数大
    • 开发文档和工具
    • 跨浏览器支持
  • Chrome 拓展使用的开发技术
  • Chrome 拓展管理
    • 查看
    • 如何安装
      • Chrome应用商店安装
      • 开发者模式安装解压包
  • Chrome 拓展开发基本步骤
  • 总结
  • 个人简介

Chrome 拓展(Chrome Extension)是什么

  • Chrome Extension 实际上就是大多数人所说的 Chrome 插件,但是从标准上来说 Chrome 插件是浏览器更底层的拓展功能开发,而我们使用的应该叫 Chrome 拓展(Chrome Extension)。
  • Chrome 拓展是为 Chrome 浏览器设计和开发的小型软件程序,用于增强浏览器功能、改善用户体验,甚至提供全新的工具和服务。比如我们常用的广告屏蔽插件、网页图片资源、视频资源嗅探工具等等。

在这里插入图片描述

为什么使用 Chrome 拓展?

个性化浏览体验

  • Chrome 拓展允许用户根据个人需求自定义浏览器功能,使其更符合个人使用习惯。

提高工作效率

  • 通过集成各种工具和服务,Chrome 拓展有助于提高用户的工作效率,简化常见任务。

改善隐私和安全

  • 一些拓展专注于提高隐私保护和浏览安全性,例如广告拦截器、密码管理器等。

创新新功能

  • 开发者可以通过拓展引入新的功能,这有助于推动浏览器技术的创新。

发展历史

2009 年:初版发布

  • 2009 年 12 月,Google Chrome Web Store 推出,允许开发者上传和分发 Chrome 拓展。这一举措标志着 Chrome 拓展正式进入开发者社区。

2010 年:稳步增长

  • 随着 Chrome 浏览器用户基数的增加,Chrome 拓展开始受到更多关注。开发者社区逐渐蓬勃发展,发布了许多实用的拓展,包括广告拦截器、界面增强工具等。、

2013 年:Chrome App 和扩展合并

  • Google 在 Chrome 29 版本中将 Chrome App 和扩展进行了合并,将两者整合为 Chrome Apps 和 Extensions。这一变化使得 Chrome Apps 和 Extensions 共享相似的开发模型,并能够在 Chrome Web Store 上获得更多曝光。

2014 年:Material Design 和更多 API

  • Chrome 拓展开始采用 Material Design 风格,与 Chrome 浏览器整体风格保持一致。此外,Chrome 拓展 API 继续增加,使得开发者可以更深入地与浏览器进行交互。

2016 年:Manifest V3 计划

  • Google 宣布推出 Manifest V3 计划,这是 Chrome 拓展开发的一项重大变革。Manifest V3 将引入一些新的安全性和性能改进,同时引发了一些开发者和社区的讨论。

2021 年:Manifest V3 正式发布

  • Chrome 88 中的 Manifest V3 正式发布,带来了一系列的变化,包括对后台页面、权限模型和事件系统的改进。这使得 Chrome 拓展更加安全、高效,同时也需要开发者对现有代码进行调整。

2022 年:持续发展

注:2024年 Manifest V2 将会被逐步弃用
We will begin disabling Manifest V2 extensions in pre-stable versions of Chrome (Dev, Canary, and Beta) as early as June 2024, in Chrome 127 and later. 
https://developer.chrome.com/blog/resuming-the-transition-to-mv3/

为什么选择 Chrome 拓展而不是其它浏览器拓展

用户基数大

  • Chrome 是全球最受欢迎的浏览器之一,拥有庞大的用户基数。通过创建 Chrome 扩展,你能够触达大量的用户,从而推广你的应用、服务或功能。

开发文档和工具

  • Chrome 提供了丰富的开发文档和工具,使得创建扩展变得相对容易。Chrome 扩展使用 HTML、CSS 和 JavaScript 进行开发,这些都是熟悉且广泛使用的前端技术。

跨浏览器支持

  • 除了Chrome浏览器之外,还可以运行在所有webkit内核的国产浏览器,比如360极速浏览器、360安全浏览器、搜狗浏览器、QQ浏览器等等。

Chrome 拓展使用的开发技术

  • 主要使用 Web 技术开发。
  • 除此之外,还可以配合C++编写的dll动态链接库实现一些更底层的功能(NPAPI),比如全屏幕截图。
注:由于安全原因,Chrome浏览器42以上版本已经陆续不再支持NPAPI插件,取而代之的是更安全的PPAPI。

Chrome 拓展管理

查看

  • Chrome 浏览器右上角菜单->扩展程序->管理拓展程序进入 插件管理页面,或者直接在地址栏输入 chrome://extensions 进入:

在这里插入图片描述
在这里插入图片描述

如何安装

Chrome应用商店安装

  • Chrome要求插件必须从它的Chrome应用商店安装。

开发者模式安装解压包

  • 右上角打开开发者模式
  • 解压.crx或其它压缩包文件,点击左上角加载已解压的拓展程序,导入刚才解压的文件夹即可

Chrome 拓展开发基本步骤

  • 创建清单文件(manifest.json): 包含拓展的基本信息、权限和功能声明。
  • 编写 HTML、CSS 和 JavaScript: 开发拓展的前端部分,实现拓展的具体功能。
  • 测试拓展: 在 Chrome 浏览器中加载和测试拓展,确保功能正常。
  • 打包和分发: 将拓展打包为压缩文件,并通过 Chrome Web Store 进行分发。

总结

  • Chrome 拓展作为浏览器生态系统中的重要组成部分,不仅为用户提供了丰富的个性化选择,也为开发者创造了创新和实用的工具。随着技术的不断发展,Chrome 拓展将继续在提升浏览器体验和推动创新方面发挥关键作用。
  • 接下来一个月,我将更新Chrome 拓展开发系列文章:一文入门 Chrome 拓展开发(上):组件篇;Chrome 拓展开发系列:一文入门 Chrome 拓展开发(下):通信篇;Chrome 拓展开发实战:从0到1开发同平台账号切换拓展插件;和大家一起从0到1开发一款属于自己的浏览器拓展。

个人简介

👋 你好,我是 Lorin 洛林,一位 Java 后端技术开发者!座右铭:Technology has the power to make the world a better place.

🚀 我对技术的热情是我不断学习和分享的动力。我的博客是一个关于Java生态系统、后端开发和最新技术趋势的地方。

🧠 作为一个 Java 后端技术爱好者,我不仅热衷于探索语言的新特性和技术的深度,还热衷于分享我的见解和最佳实践。我相信知识的分享和社区合作可以帮助我们共同成长。

💡 在我的博客上,你将找到关于Java核心概念、JVM 底层技术、常用框架如Spring和Mybatis 、MySQL等数据库管理、RabbitMQ、Rocketmq等消息中间件、性能优化等内容的深入文章。我也将分享一些编程技巧和解决问题的方法,以帮助你更好地掌握Java编程。

🌐 我鼓励互动和建立社区,因此请留下你的问题、建议或主题请求,让我知道你感兴趣的内容。此外,我将分享最新的互联网和技术资讯,以确保你与技术世界的最新发展保持联系。我期待与你一起在技术之路上前进,一起探讨技术世界的无限可能性。

📖 保持关注我的博客,让我们共同追求技术卓越。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/210084.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【计算机网络漫谈】OSI七层模型与TCP/IP四层(参考)模型

一、七层?四层? 1.为什么需要协议?2.OSI七层模型是干什么的?3.TCP/IP四层(参考)模型4.TCP/IP(参考)模型与OSI七层模型有什么异同? 二、自底向上的网络分层 1. 物理层2…

6.7 Windows驱动开发:内核枚举LoadImage映像回调

在笔者之前的文章《内核特征码搜索函数封装》中我们封装实现了特征码定位功能,本章将继续使用该功能,本次我们需要枚举内核LoadImage映像回调,在Win64环境下我们可以设置一个LoadImage映像加载通告回调,当有新驱动或者DLL被加载时…

光伏测算工具能测量哪些数据?

光伏测算工具在光伏电站的设计和规划过程中起着至关重要的作用。它们可以测量并分析一系列关键数据,以确保光伏电站的顺利建设和高效运营。本文将详细介绍光伏测算工具能测量的主要数据。 一、太阳能资源评估 光伏测算工具可以对场地的太阳能资源进行评估。这包括测…

C++模版

文章目录 C模版1、泛型编程2、函数模版2.1、函数模版概念2.2、函数模版格式2.3、函数模版原理2.4、函数模版的实例化2.5、模板参数的匹配原则 3、类模版3.1、类模版概念3.2、类模版格式3.3、类模板的实例化 C模版 1、泛型编程 泛型编程(Generic Programming&#x…

html个人简历网页版源码

文章目录 1.个人简历1.1 简历风格1 - 纯净版1.2 简历风格2 - 蓝色版1.2 简历风格3 - 粉色心动版 源码目录结构源码下载 作者:xcLeigh 文章地址:https://blog.csdn.net/weixin_43151418/article/details/134752070 html个人简历网页版源码,好看…

SpringBoot整合JavaMail

SpringBoot整合JavaMail发一个简单邮件 文章目录 SpringBoot整合JavaMail发一个简单邮件导入坐标配置写客户端 SpringBoot整合JavaMail发多部件邮件 导入坐标 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starte…

SEO插件,免费的SEO插件大全

SEO插件的作用 让我们来谈谈SEO插件的作用。SEO插件是一种能够在网站建设和管理过程中&#xff0c;提供全方位、智能化SEO服务的工具。它们通常嵌入在网站后台&#xff0c;为站长提供了诸如关键词优化、页面结构调整、外链管理等一系列强大功能&#xff0c;帮助站长更好地适应…

【数电笔记】最小项(逻辑函数的表示方法及其转换)

目录 说明&#xff1a; 逻辑函数的建立 1. 分析逻辑问题&#xff0c;建立逻辑函数的真值表 2. 根据真值表写出逻辑式 3. 画逻辑图 逻辑函数的表示 1. 逻辑表达式的常见表示形式与转换 2. 逻辑函数的标准表达式 &#xff08;1&#xff09;最小项的定义 &#xff08;2&am…

一篇短文让你彻底理解什么是逻辑门电路

一、门电路概述 门电路&#xff1a;实现基本运算、复合运算的单元电路&#xff0c;如与门、与非门、或门… 注意&#xff1a;门电路中以高/低电平表示逻辑状态的1/0 正逻辑与负逻辑&#xff1a; 正逻辑&#xff1a;高电平表示1、低电平表示0 负逻辑&#xff1a;高电平表示0、低…

2022-06-17 github 访问慢的解决办法 - 手动添加hosts

访问https://hosts.gitcdn.top/hosts.txt 将网页的全部内容粘贴到你电脑的hosts文件中 在系统中找到 hosts 文件 Window&#xff1a;C:\Windows\System32\drivers\etc\hosts 或 Linux&#xff1a;/etc/hosts

Hdoop学习笔记(HDP)-Part.12 安装HDFS

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …

Embedding And Word2vec

Embedding与向量数据库&#xff1a; Embedding 简单地说就是 N 维数字向量&#xff0c;可以代表任何东西&#xff0c;包括文本、音乐、视频等等。要创建一个Embedding有很多方法&#xff0c;可以使用Word2vec&#xff0c;也可以使用OpenAI 的 Ada。创建好的Embedding&#xff…

IDEA下载和安装

IDEA的下载和安装 一、概述 IDEA全称IntelliJ IDEA&#xff0c;是用于Java语言开发的集成环境&#xff0c;它是业界公认的目前用于Java程序开发最好的工具。 集成环境&#xff1a;把代码编写&#xff0c;编译&#xff0c;执行&#xff0c;调试等多种功能综合到一起的开发工具…

论文阅读 - LoRA: Low-Rank Adapatation of Large Language Models

论文链接 arxiv&#xff1a; 论文目标与背景 大语言模型有很好的性能&#xff0c;在对接下游任务&#xff08;DownStream&#xff09;完成大语言模型的微调 主要方法 &#xff1a;冻结预训练模型的权重&#xff0c;插入可训练的秩分解矩阵到Transformer结构的每一层&#…

Facebook做外贸推广如何?

Facebook作为全球最大的社交媒体平台之一&#xff0c;同时也拥有着庞大的流量以及用户&#xff0c;基于这些数据更是吸引着不少的跨境电商卖家选择此平台进行推广营销&#xff0c;那么Facebook做外贸推广到底如何呢&#xff1f;下面小编对此讲讲吧&#xff01; 1、全球覆盖流量…

Spring Boot统一异常处理 Spring拦截器

小编在前文中向大家描述了Spring AOP的相关内容&#xff1a;Spring AOP-CSDN博客感兴趣的各位老铁可查看一下&#xff01;&#xff01; 那么&#xff0c;我们本文主要是代理搭建来实现一个Spring Boot统一功能处理模块了&#xff0c;当然&#xff0c;这个也是Spring AOP的实战环…

SQL Server 2016(为数据表Porducts添加数据)

1、实验环境。 某公司有一台已经安装了SQL Server 2016的服务器&#xff0c;并已经创建了数据库PM。 2、需求描述。 在数据库PM中创建表products&#xff0c;"编号"列的值自动增长并为主键。然后使用T-SQL语句为表格插入如下数据。 3、实验步骤。 1、使用SSMS管理工…

第九节HarmonyOS 常用基础组件1-Text

一、组件介绍 组件&#xff08;Component&#xff09;是界面搭建与显示的最小单位&#xff0c;HarmonyOS ArkUI声名式为开发者提供了丰富多样的UI组件&#xff0c;我们可以使用这些组件轻松的编写出更加丰富、漂亮的界面。 组件根据功能可以分为以下五大类&#xff1a;基础组件…

如何优雅的进行业务分层

1.什么是应用分层 说起应用分层&#xff0c;大部分人都会认为这个不是很简单嘛 就controller&#xff0c;service, mapper三层。 看起来简单&#xff0c;很多人其实并没有把他们职责划分开&#xff0c;在很多代码中&#xff0c;controller做的逻辑比service还多,service往往当…

C/C++,图算法——求强联通的Tarjan算法之源程序

1 文本格式 #include <bits/stdc.h> using namespace std; const int maxn 1e4 5; const int maxk 5005; int n, k; int id[maxn][5]; char s[maxn][5][5], ans[maxk]; bool vis[maxn]; struct Edge { int v, nxt; } e[maxn * 100]; int head[maxn], tot 1; vo…
最新文章