## 常用配置
其中,`name`、`version` 和 `manifest_version` 是必須的,`manifest_version`目前統一是2。
必填配置:
```
{
"name": "Extension", // 擴展名稱
"version": "1.0.0", // 版本信息,才用x.y.z格式,更新時必須更改版本,且大于上個版本
"manifest_version": 2 // 必須為2
}
```
常用可選配置:
```
{
"description": "", // 擴展簡介
"icons": {
"16": "icon16.png",
"48": "icon48.png",
"128": "icon128.png"
}, // icon文件,建議提供3種不同大小的,Chrome會在不同情況是用對應大小的圖片
"default_locale": "en" // 默認語言,選擇后,目錄中必須有_lcoales目錄,然后建立語言目錄。后面章節會講到
"browser_action": {
"default_icon": "icon16.png",
"default_title": "擴展tooltip提示名稱",
"default_popup": "popup.html"
}, // 設置默認的popup頁
"background": {
"persistent": true,
"scripts": [
"background.js"
]
}, // 背景頁,打開擴展就會常駐,主要用于數據傳遞
"options_page": "options.html", // 選項頁,如果不設置,右鍵擴展[選項]會處于置灰狀態
"permissions": [
"tabs", // tab權限
"\u003Call_urls\u003E" // <all_urls>表示匹配所有地址,最好采用unicode寫法,獲取對應網址的權限,你也可以寫具體網址,如: "https://*.google.com",當你需要請求對應網址的資源是需要
], // 擴展權限,Chrome擴展的權限都需要指定,從而使用相對應的Chrome API
"web_accessible_resources": [
"icon16.png",
"icon48.png",
"icon128.png"
], // 資源白名單,可插入Web頁面
"content_scripts": [
{
"matches": [
"http://*/*", "https://*/*"
], // 地址匹配規則
"js": [
"content.js"
], // JS白名單
"css": [
"content.css"
], // CSS白名單
"all_frames": true,
"run_at": "document_idle" // 注入位置
}
], // 腳本白名單
"content_security_policy": "script-src 'self'; bject-src 'self'", // 安全策略
"homepage_url": "https://github.com/excaliburhan/zhDaily" // 擴展首頁
}
```
注:
* `browser_action`和`page_action`二選一,或不設
* 配置文件里配置的文件路徑,都是相對于`mainfest.json`的相對路徑。
更多關于`manifest.json`:[https://developer.chrome.com/extensions/manifest](https://developer.chrome.com/extensions/manifest)
- 前言
- 致讀者
- 第一章 什么是Chrome擴展
- 第二章 manifest.json
- 常用配置
- background
- content-scripts
- popup
- web_accessible_resources
- devtools_page
- Command Line API
- homepage_url
- permissions
- 第三章 5種類型的Javascript
- 權限對比
- 消息傳遞
- 短連接
- 長連接
- 調試方式
- 第四章 瀏覽器的UI界面
- Browser Actions
- Page Actions
- 右鍵菜單
- 桌面通知
- Omnibox
- 選項頁
- 覆蓋特定頁
- 第五章 Chrome應用開發
- 擴展與應用的異同
- 一個簡單的Chrome應用
- 應用窗口
- 應用窗口
- 美化窗口
- 窗口事件
- webview
- 應用相關API
- 第六章 打包與發布擴展應用
- 第七章 常用API
- 右鍵菜單(contextMenus)
- 鍵盤快捷鍵(commands)
- cookies ?
- 事件(events)
- Extension ?
- 瀏覽器歷史記錄(history) ?
- 消息通知(notifications)
- 擴展管理(management) ?
- 本地存儲(storage)
- 標簽頁(tabs) ?
- 書簽(bookmarks) ?
- Runtime
- 窗口(windows) ?
- 第八章 擴展
- 主題
- 國際化 (i18n)
- 已安裝的擴展
- 附錄A 參考資料