范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

谷歌扩展开发教程(四)manifest配置项参数说明

  扩展manifest向浏览器提供有关扩展的信息,例如最重要的文件和扩展可能使用的功能。当有新的manifest版本时,扩展平台功能会发生变化。
  Manifest V3 专注于该愿景的三大支柱:隐私、安全和性能,同时保留和改进我们的能力和网络基础。 配置
  chrome 插件的版本 "manifest_version": 3,
  插件 名称 "name": "ChromeName",
  插件 版本号 "version": "1.0.0",
  插件 描述 , 132个字符以内 "description": "插件描述内容",
  默认语言 (如果当前浏览器设置的语言不存在多语言配置文件,则默认中文),Chrome插件的多语言只能根据当前浏览器设置的语言来设定,无法通过代码更改语言 "default_locale": "zh_CN",
  key ,发布插件后会给一个key,把那个key的值放这里,通常不需要使用此值。 "key": "xxx",
  icon,浏览器扩展程序管理里面的 图标 、浏览器右侧插件图标点开的下拉菜单展示的已开启插件的图标、以及插件详情页的标签卡的那个小图标 "icons": {     "16": "static/img/logo-16.png",     "19": "static/img/logo-19.png",     "38": "static/img/logo-38.png",     "48": "static/img/logo-48.png",     "128": "static/img/logo-128.png"   },
  内容 安全政策 ,V2的value是字符串,V3是对象
  extension_pages  :此政策涵盖您的扩展程序中的页面,包括 html 文件和service workers。
  sandbox  :此政策涵盖您的扩展程序使用的任何沙盒扩展程序页面。
  script-src,    object-src  和 worker-src  指令只能具有以下值: self  none  任何 localhost 源、( http://localhost  、 http://127.0.0.1  或这些域上的任何端口) "content_security_policy": {     //原文:此政策涵盖您的扩展程序中的页面,包括 html 文件和服务人员;具体不是很明白,但是参数值得是self,即当前自己     "extension_pages": "script-src "self"; object-src "self"",      //原文:此政策涵盖您的扩展程序使用的任何[沙盒扩展程序页面];具体不是很明白,但是参数值得是self,即当前自己     "sandbox": "sandbox allow-scripts; script-src "self"; object-src "self"" },
  常驻后台脚本 ,后台脚本引入,v2是scripts:[xxx,xxx],可以引入多个js文件,v3是service_worker:"xxx",只能引入一个js,v3版最大的改动应该就是这里了,扩展程序管理界面的插件的那个"背景页"也将变成"Service Worker",改动之后background.js将和浏览器完全分离,即无法调用window和ducoment对象。后面课程将详细进行介绍和演示。
  " Service Worker  是您的浏览器在后台运行的脚本,与网页分开,为不需要网页或用户交互的功能打开了大门。" 这项技术可以实现类似原生的体验,例如推送通知、丰富的离线支持、后台同步和开放网络上的"添加到主屏幕"。 "background": {     "service_worker": "background.js" },
  注入 内容脚本 ,值是个数组对象,可以有多个对象;
  内容脚本是在网页上下文中运行的文件。通过使用标准文档对象模型(DOM),他们能够读取浏览器访问的网页的详细信息,对其进行更改,并将信息传递给其父扩展。 js :字符串数组; 可选的。 要注入匹配页面的 JavaScript 文件列表。这些是按照它们在这个数组中出现的顺序注入的。 css :字符串数组; 可选的。 要注入匹配页面的 CSS 文件列表。在为页面构建或显示任何 DOM 之前,它们按照它们在此数组中出现的顺序被注入。 matches :字符串数组 必需的。指定此内容脚本将被注入到哪些页面。有关这些字符串的语法的更多详细信息 match_about_blank :布尔值 可选的。脚本是否应该注入about:blank父框架或开启框架与matches. 默认为假 exclude_matches : 字符串数组 可选的。排除此内容脚本将被注入的页面。有关这些字符串的语法的更多详细信息 include_globs : 字符串数组 可选的。之后应用matches以仅包含那些也匹配此 glob 的 URL。 exclude_globs : 字符串数组 可选的。之后应用matches以排除与此 glob 匹配的 URL。 "content_scripts": [     //每个对象代表一个注入的配置     {       //需要在指定页面注入的js脚本文件       "js": [         "xxx.js",         "xxx.js",       ],        //需要注入js脚本文件的指定页面       "matches": [         "https://*.csdn.net/*",         "https://*.xxx.com/*"       ],        //不允许注入js脚本文件的指定页面        "exclude_matches": ["https://*.xxx.com/*"],        //什么时候注入的js脚本,document_start=页面加载开始时,document_end=页面加载结束时       "run_at": "document_end"     }   ],
  API权限 ,需要使用某些API时需要设置该API权限才行 "permissions": [       "contextMenus", //自定义创建右键菜单API       "tabs", //tab选项卡API       "storage", //缓存API       "webRequest", //监听浏览器请求API       ...   ],
  action : 控制 Google Chrome 工具栏中的扩展程序图标。必填选项。
  为了使用 chrome.action  API,您需要指定 "manifest_version" 等于  3 或更高,并将  action 密钥包含在您的清单文件中。 {   "name": "Action Extension",   ...   "action": {     "default_icon": {              // 可选       "16": "images/icon16.png",   // 可选       "24": "images/icon24.png",   // 可选       "32": "images/icon32.png"    // 可选     },     "default_title": "Click Me",   // 可选, 显示在工具提示     "default_popup": "popup.html"  // 可选   },   ... }
  web_accessible_resources  通过网络 访问的资源 ,v2是提供一个数组,v3得提供数组对象,每个对象可以映射到一组资源到一组 URL 或扩展 ID   "web_accessible_resources": [{     //允许访问的资源路径,数组传多个参数     "resources": ["*/img/xxx.png", "*/img/xxx2.png"],          //允许访问资源的页面     "matches": [       "https://*.csdn.net/*",       "https://*.xxx.com/*"     ]   }]manifest.json{   //chrome插件的版本   "manifest_version": 3,    //插件名称   "name": "ChromeName",    //插件版本号   "version": "1.0.0",    //插件描述   "description": "__MSG_Plugin_Desc__",    //默认语言(如果当前浏览器设置的语言不存在多语言配置文件,则默认中文),Chrome插件的多语言只能根据当前浏览器设置的语言来设定,无法通过代码更改语言   "default_locale": "zh_CN",     //内容安全政策,V2的value是字符串,V3是对象   "content_security_policy": {     //原文:此政策涵盖您的扩展程序中的页面,包括 html 文件和服务人员;具体不是很明白,但是参数值得是self,即当前自己     "extension_pages": "script-src "self"; object-src "self"",     //原文:此政策涵盖您的扩展程序使用的任何[沙盒扩展程序页面];具体不是很明白,但是参数值得是self,即当前自己     "sandbox": "sandbox allow-scripts; script-src "self"; object-src "self""   },     //key,发布插件后会给一个key,把那个key的值放这里   "key": "xxx",    //icon,浏览器扩展程序管理里面的图标、浏览器右侧插件图标点开的下拉菜单展示的已开启插件的图标、以及插件详情页的标签卡的那个小图标   "icons": {     "16": "static/img/logo-16.png",     "19": "static/img/logo-19.png",     "38": "static/img/logo-38.png",     "48": "static/img/logo-48.png",     "128": "static/img/logo-128.png"   },    //背景页,后台脚本引入,v2是scripts:[xxx,xxx],可以引入多个js文件,v3是service_worker:"xxx",只能引入一个js,v3版最大的改动应该就是这里了,扩展程序管理界面的插件的那个"背景页"也将变成"Service Worker",改动之后background.js将和浏览器完全分离,即无法调用window和ducoment对象   //可以看介绍:   //1、//developer.chrome.com/docs/extensions/mv3/intro/mv3-migration/#background-service-workers;   //2、//developer.chrome.com/docs/extensions/mv3/migrating_to_service_workers/    "background": {     "service_worker": "background.js"   },    //注入脚本,值是个数组对象,可以有多个对象   "content_scripts": [     //每个对象代表一个注入的配置     {       //需要在指定页面注入的js脚本文件       "js": [         "xxx.js",         "xxx.js",       ],        //需要注入js脚本文件的指定页面       "matches": [         "https://*.csdn.net/*",         "https://*.xxx.com/*"       ],        //不允许注入js脚本文件的指定页面        "exclude_matches": ["https://*.xxx.com/*"],        //什么时候注入的js脚本,document_start=页面加载开始时,document_end=页面加载结束时       "run_at": "document_end"     }   ],    //API权限,需要使用某些API时需要设置该API权限才行   "permissions": [       "contextMenus", //自定义创建右键菜单API       "tabs", //tab选项卡API       "storage", //缓存API       "webRequest", //监听浏览器请求API       ...   ],    //主机权限,在背景页backgroud.js里面或者popup页面走请求时,请求域名的白名单权限,如果没添加的则请求会失败   "host_permissions": [     "https://*.csdn.net/*",     "https://*.xxx.com/*"   ],    //动作API,原文:在 Manifest V2 中,有两种不同的 API 来实现操作: `"browser_action"` 和 `"page_action"` .    //这些 API 在引入时扮演了不同的角色,但随着时间的推移它们变得多余,因此在 Manifest V3 中,我们将它们统一为单个 `"action"` API;    //配置上action:{},可以是空对象,但是action这个配置得有,不然的话扩展程序管理界面的"Service Worker"将显示无效,   //且无法点开"Service Worker"的开发者工具控制台以及点击插件图标时触发的这个方法会报错chrome.action.onClicked.addListener,    "action": {    },    //通过网络访问的资源,v2是提供一个数组,v3得提供数组对象,每个对象可以映射到一组资源到一组 URL 或扩展 ID   "web_accessible_resources": [{     //允许访问的资源路径,数组传多个参数     "resources": ["*/img/xxx.png", "*/img/xxx2.png"],          //允许访问资源的页面     "matches": [       "https://*.csdn.net/*",       "https://*.xxx.com/*"     ]   }] }

比亚迪海鸥对比五菱缤果,谁更值得期待?伴随着新能源车市场渗透率的逐步扩大,自主新能源车型领域的布局也更加丰富,尤其是从老头乐转正后的入门级微型车和小型车,受到了市场的极大好评。在今年,比亚迪为了降低入门级门槛,推出了小无人车来了你准备好了吗?新春佳节是阖家团圆的日子,与此同时,街上的出租车网约车往往也少了很多。但是今年春节,北京武汉等地的消费者出行有了新选择无人驾驶出租车随时候命。无人驾驶汽车(以下简称无人车)正逐渐融一加Ace2与红米K60怎么选?在3000元左右这个价位,手机性价比又很高能够满足日常使用又能兼顾游戏性能在这个价位是国产手机的必争之地,比如OPPO旗下的一加手机,以及小米旗下的红米手机,都是性价比非常高的子品因为这4个理由,我决定购买OPPOFindN2Flip折叠屏手机是一项创新性技术,其设计是为了让用户能够在需要时将手机屏幕折叠起来,更加方便携带和存储。与传统手机相比,折叠屏手机具有更大的屏幕空间,可以为用户提供更好的使用体验。由于折大逆转,皇马52大胜利物浦加油皇马实力翻盘全场比赛结束皇马52利物浦完成超级大逆转!威尼修斯上半场梅开二度本泽马下半场梅开二度,米利唐头球破门逆转比分,今晚熬夜看球值!HalaMadrid!!一场进球大战碰官宣!湖人选中的榜眼连续2年赛季报销!8换1交易湖人赚了公牛官方宣布,球队后卫朗佐鲍尔赛季报销,这是球哥连续2年赛季报销。公牛报道,球哥在参加高水平篮球相关活动期间,仍然会感到身体不适。考虑到恢复比赛所需的时间和NBA现阶段的赛程,球哥国米为小图拉姆开出500万年薪,将与巴萨马竞热刺和米兰竞争根据意大利著名记者TMW网站主编MarcoConterio的报道,国米将与巴塞罗那马德里竞技热刺和米兰等队竞争法国前锋小图拉姆,蓝黑军团已经开出了一份税后500万欧元的年薪报价。目前国足队长也受牵连?媒体人爆料直接点名,国足现状令人堪忧从去年李铁被带走调查到不久前陈戌源的落马,中国足坛的反黑行动一直都在进行中。几位重要人物的相继落网让很多人都见识到了足坛内部黑暗的一角,但同时也有人觉得,是不是还会有更大的鱼没有被恭喜梅内!大巴黎新帅曝光,手段强硬曾硬刚姆总,二进宫欲立新核大巴黎本赛季的战绩已经接近失败了,欧冠淘汰赛首回合面对强大的拜仁主场01落后。第二回合想要翻盘希望也不大了,而大巴黎也在着手新帅的选择,其中穆帅和齐达内已经被排除了,大巴黎新帅也大巴尔韦德开玩笑赢球全靠教练,不这么说他就不让我出场皇马中场巴尔韦德在与利物浦赛后接受了Movistar的采访一场大胜,低开高走你咋笑了?(安切洛蒂从身后走过)哦,Carlo在那边,他跟你说什么呢?他说赢球都是靠他(笑)。为什么这么久利梅西现在踢3场焦点战歇1场比较好,巴黎仍应和他续约巴黎人报采访了里昂助理教练,同时也是梅西在巴塞罗那的前队友久利。久利对于梅西是否续约表达了自己的看法我们批评了他很多,但我们看到他在世界杯上取得了成功。因为他提前做了充分的准备,这
iQOONeo5S和iQOONeo5SE到底有什么不同?iQOONeo5还值得购买吗?iQOO在年底选择更新了Neo系列,我本以为会推出iQOONeo6,没想到iQOO跟5这个数字杠上了,不仅推出了iQOONeo5S还连带推出一款LCD屏的iQOONeo5SE。那么宝可梦GO庆祝游戏推出五周年官方分享5张全新插画宠物养成对游戏宝可梦GO官方为庆祝发售五周年,在7月举办了庆典活动,今日官方在推特公开了5张游戏的全新艺图,这是邀请了5位插画家分别绘制的,作者包括SUSHIO浅野TAO田中寛崇。打开一本书,就是一个神奇的世界有一天,学校给一年级的孩子留了一个画画作业,孩子刚刚学过一篇课文四个太阳,老师为了让孩子们更好地理解四季的特点,布置了一个有趣的作业画出心中的太阳,让同学们充分发挥想象力,会画出什来到白鹿原眼睛湿润了,终于明白它获茅盾文学奖之坎坷今天上午高速驱车来到了白鹿原。这里虽不是本次旅行的目的地,但是让我内心是十分激动,影视里的镜头一幅幅画面不断在我脑海里滚动,五味杂陈涌上心头。有感而发一片土黄色的大地上,攒满了土黄爸爸去哪儿5位爸爸,4个翻车,只有森碟爸爸口碑好五位爸爸通过这档亲子节目和孩子们的互动中建立了浓厚的父子感情,八年里他们也都长大了,家庭生活也都各自的变化,五个爸爸,两个爸爸离婚,两个爸爸口碑受损。只有森碟爸爸田亮口碑最好一家四神秘买家6亿元拍走,乐视大厦究竟归谁?2014这一年,贾跃亭还是人生得意,乐视系估值高达3000亿元,贾跃亭去了趟美国决定造车构筑更大的生态,双胞胎女儿降生,老贾还买下了一处大楼,冠名乐视大厦。不同于其他互联网公司要么刘润边界感的本质,是对所有权的认知底层逻辑是润米咨询创始人微软前战略合作总监5分钟商学院主理人刘润提出的概念。他认为,只有掌握了环境背后的底层逻辑,探寻到了万变中的不变,才能在千变万化的世界中看清本质,学会批判性思侵犯专利被罚1。6亿扯下格力遮羞布,董明珠该反省了格力提起格力大家会想到什么?核心技术,国产骄傲,制造业标杆一系列的印象都在提醒你格力在技术上的强大。但是事实果真如此吗?随着格力被奥克斯起诉专利侵权并被判赔偿1。67亿之后,格力以股市崩盘有三个前兆每一轮牛市都是人性的疯狂见顶正当人们疯狂的买进追涨杀高往往是危机开启之时但凡有10年以上的交易经验的都经历过两轮牛熊交替两波市场行情历历在目对于散户来说是否能够完全逃离其实在某些征我国喜马拉雅山是怎样形成的耸立在青藏高原南缘的喜马拉雅山,是世界上最高大雄伟的山脉。它东西绵延2450千米,南北宽200350千米,是由4列平行山脉组成的略向南凸的巨大弧形山系。中国科学家在珠穆朗玛峰地区考解读细胞死亡续一杨毅编译(接续上一期)用一种特殊的试剂盒,可以测定能量释放时的化学发光量,从而定量分析ATP和ADP的比值。此外,还可用荧光的方法来定量探测细胞毒性。一家分子生物学公司开发了一种双染色的试