首页 > 其他分享 >Chrome插件manifest.json文件详解

Chrome插件manifest.json文件详解

时间:2023-09-25 23:35:52浏览次数:32  
标签:插件 Chrome js default manifest 图标 png 页面

{

    // 扩展名称

    "name": "MyExtension",

    // 版本。由1到4个整数构成。多个整数间用"."隔开

    "version": "1.0",

    // manifest文件版本号。Chrome18开始必须为2

    "manifest_version": 2,

    // 描述。132个字符以内

    "description": "",

    // 扩展图标。推荐大小16,48,128

    "icons": {

        "16": "image/icon-16.png",

        "48": "image/icon-48.png",

        "128": "image/icon-128.png"

    },

    // 语言

    "default_locale": "en",

    // 地址栏右侧图标管理,含图标及弹出页面的设置等

    // 建议至少保留一个设置,不然扩展图标是暗的

    "browser_action": {

        "default_icon": "image/icon-128.png",

        "default_title": "My Message",

        "default_popup": "html/browser.html"

    },

    // 地址栏最后附加图标。含图标及行为等

    "page_action": {

        "default_icon": "image/icon-48.png",

        "default_title": "My Test",

        "default_popup": "html/page.html"

},

 // popup页面配置

  "action": {

    // popup页面的路径(根目录为最终build生成的插件包目录)

    "default_popup": "index.html",

    // 浏览器插件按钮的图标

    "default_icon": {

      "16": "/images/app.png",

      "32": "/images/app.png",

      "48": "/images/app.png",

      "128": "/images/app.png"

    },

    // 浏览器插件按钮hover显示的文字

    "default_title": "React CRX MV3"

  },

    // 主题,用于更改整个浏览器的外观

    "theme": {},

    // 指定扩展需要跳转到的URL

    "app": {},

    // 指定扩展进程的background运行环境及运行脚本

    "background": {

        "scripts": [

            "lib/jquery-3.3.1.min.js",

            "js/background.js"

        ],

        "page": "html/background.html"

    },

    // 替换页面

    "chrome_url_overrides": {

        "pageToOverride": "html/overrides.html"

    },

    // 指定在web页面运行的脚本/插入的css及运行/插入时机

    "content_scripts": [

        {

//应用于哪些页面地址(可以使用正则,<all_urls>表示匹配所有地址)

            "matches": [

                "https://www.baidu.com/*"

            ],

//注入到目标页面的css,注意不要污染目标页面的样式

            "css": [

                "css/mystyles.css"

            ],

// 注入到目标页面js,这个js是在沙盒里运行,与目标页面是隔离的,没有污染问题。

            "js": [

                "lib/jquery-3.3.1.min.js",

                "js/content.js"

            ],

// 代码注入的时机,可选document_start、document_end、document_idle(默认)

            "run_at": "document_idle"

        }

    ],

    // 安全策略

    "content_security_policy": "",

     

    "file_browser_handlers": [],

    // 扩展的官方主页

    "homepage_url": "http://xxx",

    // 插件在隐私模式下的配置

    "incognito": "spanning",

    // 用户操作意图描述

    "intents": {},

    // 扩展唯一标识。不需要人为指定

    "key": "",

    // 扩展所需chrome的最小版本

    "minimum_chrome_version": "1.0",

    // 消息与本地处理模块映射

    "nacl_modules": [],

    // 是否允许脱机运行

    "offline_enabled": true,

    // ominbox即地址栏。用于响应地址栏的输入事件

    "omnibox": {

        "keyword": "myKey"

    },

    // 选项页。用于在扩展管理页面跳转到选项设置

    "options_page": "aFile.html",

    // 申请权限

    "permissions": [

        "https://www.baidu.com/*",

        "background",

        "tabs"

    ],

    // 扩展。可调用第三方扩展

    "plugins": [

        {

            "path": "extension_plugin.dll",

            "public": true

        }

    ],

    // 指定所需要的特殊技术。目前只支持"3D"

    "requirements": {},

    // 自动升级

    "update_url": "http://path/to/updateInfo.xml",

    // 如果向目标页面插入图片或者js,需要在这里授权插件本地资源(以下仅为示例)

    "web_accessible_resources": [

    {

      "resources": [ "/images/app.png" ],

      "matches": ["<all_urls>"]

    },

    {

      "resources": [ "insert.js" ],

      "matches": ["<all_urls>"]

    }

  ],

}

上面代码中,虽然可用的属性有这么多,但是常用的就以下这几个

  1. name 扩展名称;

  2. version 插件的版本;

  3. manifest_version 配置文件版本;

  4. description 对于插件功能的描述;

  5. icons 插件的图标;

  6. browser_action 定义插件的图标后,点击图标时弹出的页面,以及插件的标题,建议始终保留一个,不设置这个属性图标会是灰色的,设置了后才会亮起来;

  7. background 背景页,扩展进程的背景运行环境,可以拦截修改请求等等;

  8. content_scripts 内容脚本,可以指定在什么时机向什么页面插入什么脚本或者css资源;

  9. permissions 权限申请项,比如存储权限storage,请求拦截权限webRequest, webRequestBlocking等等;

标签:插件,Chrome,js,default,manifest,图标,png,页面
From: https://www.cnblogs.com/lancer525/p/17729119.html

相关文章

  • vscode运行html文件,显示"windows找不到'chrome'文件"
     运行html文件时,弹窗报错。大部分原因是因为chrome浏览器位置不对。这时,我们只要在vscode中修改chrome路径就可以解决:1、首先我们右击chrome浏览器找到属性,并且复制目标路径 2、打开vscode,在设置中找到Liveserver,打开setting.json文件,添加上chrome文件即可(将路径中的\改......
  • 【遥遥领先】Eolink IDEA 插件:零代码入侵,自动生成接口
    省流版:Eolink有IDEA插件吗?有,而且遥遥领先!我们在一年半之前就发布了,而且功能更丰富!IDEA插件市场搜索“EolinkApikit”即可安装使用。......
  • 3D力导向树插件 3d-force-graph
    3d-force-graph是什么?一个Web组件,使用强制导向的迭代布局来表示3维空间中的图形数据结构。使用ThreeJS /WebGL进行3D渲染,使用d3-force-3d或ngraph作为底层物理引擎。 3d-force-graph可以做些什么?参考以下效果:哔哩哔哩:https://www.bilibili.com/video/BV1WS4y1s7st......
  • 小星星直播去重播放器更新至V1.14版本,新增片头设置和视频倍速播放设置,搭配本身的视频
    小星星去重播放器更新V1.14版本,增加倍速播放,片头10秒静音以及片头60秒0.8倍速慢放,优化左箭头重新播放,优化鼠标隐藏,让你的直播间更稳定,下面是小星星的详细介绍!1、视频设置,在播放列表里面打开预览窗口(注意预览窗口只支持MP4格式的视频,其余格式需要设置完成以后打开视频播放窗口)(1)......
  • Ansible教程:chocolatey插件介绍及安装(Windows软件包管理器)
    介绍chocolatey.chocolatey是一个AnsibleGalaxy集合,提供了用于管理Windows上Chocolatey软件包管理器的模块和插件。Chocolatey是一个类似于Linux上的包管理器的工具,它允许在Windows系统上轻松安装、升级和卸载软件包。chocolatey.chocolatey集合包含以下模块和插件:chocolatey.choc......
  • 新版绿豆视频APP视频免授权源码 V6.6插件版
    简介:新版绿豆视频APP视频免授权源码插件版后端插件开源,可直接反编译修改方便对接苹果cms,自定义DIY页面布局!绿豆影视APP对接苹果cms所有页面皆可通过后端自由定制此版本后端源码+前端是壳(反编译版本)五款个人中心主题自由切换个人中心背景图后台可控后台控制幻灯片背景虚幻支持信......
  • webstorm插件分享
    插件修改选中区域背景......
  • 工作五年多,idea插件推荐(一)
    有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准https://blog.zysicyj.top首发博客地址文章更新计划本来打算一次更新完的。。感觉还是太多了,后面再分享吧,先分享一部分EasyCodeMybatisCodeHelper这玩意功能太离谱了,随便举几个官网地址:https://brucege.com......
  • JHub开发之插件化模块构建
    在根项目上选择新建模块,新建一个Maven用户模块。​​​​结果如下:​​同理,新建一个jhub-common项目。最终项目结构:​​‍......
  • Jmeter 监控服务器插件 ServerAgent,修改默认启动端口
    1、ServerAgent监控文件上传到Linux解压启动,sh startAgent.sh Jmeter启动监控,监控4444端口的服务器资源  2、修改startAgent.sh默认的端口 启动startAgent.sh Jmeter修改监控端口,启动查看数据 注意:Window修改和Linux一模一样的,只不过Window修改的是 startAg......