谷歌擴展程序manifest.json常用字段解釋

後臺網頁

在這裏插入圖片描述

用戶界面

在這裏插入圖片描述

內容腳本

在這裏插入圖片描述

Manifest.json

{
  // 必選
  "manifest_version": 2,
  "name": "擴展程序名字",
  "version": "版本字符串",

  // 推薦
  "default_locale": "en", //國際化 配合文件中的_locales實現多語言
  "description": "純文本描述", //擴展程序介紹
  "icons": {
    "16": "icon.png",    //用於擴展程序頁面的收藏夾圖標
    "32": "icon.png",   //Windows需要32像素的圖標,沒有則將48像素的圖標縮小
    "48": "icon.png",  //用於擴展程序管理頁面(chrome://extensions
    "128": "icon.png" //用與安裝過程中以及 Chrome 網上應用店
  }, 
   

  /* 使用瀏覽器按鈕可以在 Google Chrome 瀏覽器主窗口地址欄右側的工具欄中添加圖標。
  * 除了圖標,瀏覽器按鈕還可以有工具提示(default_title)、
  * 徽章(圖標添加文字,不可在manifest配置)和彈出內容(default_popup)。
  */
  // 選擇某一個(或者無)browser_action一直展示,page_action某些頁面展示(其餘頁面置灰)
  "browser_action": {
          "default_icon": {                   // 可選
            "19": "images/icon19.png",       // 可選
            "38": "images/icon38.png"       // 可選
          },
          "default_title": "message",      // 可選,在工具欄hover時提示
          "default_popup": "popup.html"    // 可選,點擊按鈕彈出框    
  },
  "page_action": {}, //選項同browser_action

  // 可選
  "author": "夢殤918",
  "background": {
    "scripts":[]
    // 推薦 開啓事件頁面(只在需要時加載,當事件頁面不活動時就會卸載)
    "persistent": false
  },
  // 內容腳本,注入到打開的頁面中
  "content_scripts": [{
    "matches":[],   //指定內容腳本要插入到哪些頁面中去
    "exclude_matches":[],
    "css":[],
    "js":[],
    "run_at":'', // document_start、document_end、document_idle(默認)
    "include_globs":[], //在應用 matches 之後同時匹配這一範圍的 URL
    "exclude_globs":[]
  }],
  // 替代頁面 (一個擴展程序只能替換一個頁面)
  "chrome_url_overrides": {
    "newtab":'xxx.html' //pageToOverride可替換爲bookmarks(書籤管理器)、history(歷史記錄)、newtab(“打開新的標籤頁”頁面)
  },

  "content_security_policy": "策略字符串", //https://crxdoc-zh.appspot.com/extensions/contentSecurityPolicy
  "homepage_url": "http://path/to/homepage", //插件主頁
  /* 選擇的準則是,如果您的擴展程序或者應用需要在隱身模式下加載標籤頁,請使用 split 隱身行爲。
  * 如果您的擴展程序或應用需要登錄遠程服務器或者在本地保留設置,請使用 spanning 隱身行爲。 */
  "incognito": "spanning 或 split",
  "options_page": "aFile.html", //讓用戶自定義您的擴展程序的行爲,您可能會提供一個選項頁面(配合storage API )
  "storage": {
    "managed_schema": "schema.json"
  }
}

問題

  1. Chrome擴展程序不允許使用unsafe-eval

    manifest.json

    "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章