# Management
`chrome.management` 模塊提供了管理已安裝和正在運行中的擴展或應用的方法。對于[重寫](override.html)內建的新標簽頁的擴展尤其有用。
## Manifest
要使用這個API,您必須在[擴展清單文件中](manifest.html) 中對授權,例如:
```
{
"name": "My extension",
...
**"permissions": [ "management" ]**,
...
}
```
只有一個方法不需要事先授權使用,那就是: [`getPermissionWarningsByManifest`](#method-getPermissionWarningsByManifest)
## API reference: chrome.management
### 方法
#### get
chrome.management.get(string `id`, function `callback`)
獲得指定id的擴展/應用的信息。
#### 參數
`id`_( string )_
應用或擴展([ExtensionInfo](#type-ExtensionInfo))中的ID。
`callback`_( optional function )_
#### 回調
如果你指定了 _回調函數_ 它看起來應該像下面這個樣子:
```
function(ExtensionInfo result) {...};
```
`result`_( [ExtensionInfo](#type-ExtensionInfo) )_
#### getAll
chrome.management.getAll(function `callback`)
返回所有已安裝的擴展。
#### 參數
`callback`_( optional function )_
#### 回調
如果你指定了 _回調函數_,它看起來應該像下面這個樣子:
```
function(array of ExtensionInfo result) {...};
```
`result`_( array of [ExtensionInfo](#type-ExtensionInfo) )_
#### getPermissionWarningsById
chrome.management.getPermissionWarningsById(string `id`, function `callback`)
獲得指定id的擴展的 [授權 警告](http://code.google.com/chrome/extensions/permission_warnings.html)。
#### 參數
`id`_( string )_
`callback`_( optional function )_
#### 回調
如果你指定了 _回調函數_它看起來應該像下面這個樣子:
```
function(array of string permissionWarnings) {...};
```
`permissionWarnings`_( array of string )_
#### getPermissionWarningsByManifest
chrome.management.getPermissionWarningsByManifest(string `manifestStr`, function `callback`)
獲得指定的manifest清單文件中所包含的[權限警告](http://code.google.com/chrome/extensions/permission_warnings.html)清單。注意,這一函數不需要在manifest文件中進行授權就可以使用。
#### 參數
`manifestStr`_( string )_
擴展的manifest文件內容(是個JSON字符串)。
`callback`_( optional function )_
#### 回調
如果你指定了 _回調函數_,它看起來應該像下面這個樣子:
```
function(array of string permissionWarnings) {...};
```
`permissionWarnings`_( array of string )_
#### launchApp
chrome.management.launchApp(string `id`, function `callback`)
啟動一個應用。
#### 參數
`id`_( string )_
應用的唯一ID。
`callback`_( optional function )_
#### 回調
如果你指定了 _回調函數_,它看起來應該像下面這個樣子:
```
function() {...};
```
#### setEnabled
chrome.management.setEnabled(string `id`, boolean `enabled`, function `callback`)
啟用或禁用一個應用或擴展。
#### 參數
`id`_( string )_
應用或擴展([ExtensionInfo](#type-ExtensionInfo))的唯一ID。
`enabled`_( boolean )_
應用或擴展是否被啟用或禁用。
`callback`_( optional function )_
#### 回調
如果你指定了 _回調函數_,它看起來應該像下面這個樣子:
```
function() {...};
```
#### uninstall
chrome.management.uninstall(string `id`, function `callback`)
卸載一個應用或擴展。
#### 參數
`id`_( string )_
應用或擴展([ExtensionInfo](#type-ExtensionInfo))的唯一ID。
`callback`_( optional function )_
#### 回調
If you specify the _callback_ parameter, it should specify a function that looks like this:
如果你指定了 _回調函數_,它看起來應該像下面這個樣子:
```
function() {...};
```
### 事件
#### onDisabled
chrome.management.onDisabled.addListener(function(ExtensionInfo info) {...});
當應用或擴展被禁用時觸發。
#### 參數
`info`_( [ExtensionInfo](#type-ExtensionInfo) )_
#### onEnabled
chrome.management.onEnabled.addListener(function(ExtensionInfo info) {...});
當應用或擴展被啟用時觸發。
#### 參數
`info`_( [ExtensionInfo](#type-ExtensionInfo) )_
#### onInstalled
chrome.management.onInstalled.addListener(function(ExtensionInfo info) {...});
當應用或擴展被安裝時觸發。
#### 參數
`info`_( [ExtensionInfo](#type-ExtensionInfo) )_
#### onUninstalled
chrome.management.onUninstalled.addListener(function(string id) {...});
當應用或擴展被卸載時觸發。
#### 參數
`id`_( string )_
被卸載的擴展或應用的id。
### 類型
#### IconInfo
_( object )_
擴展或應用的圖標信息。
`size`_( integer )_
一個表示圖標寬高的整數值,比如 128、48、24、16 或者其他值。
`url`_( string )_
該圖標圖像的URL。如果要顯示一個灰度版本的圖標(例如表示擴展程序已禁用時),請在URL后附加`grayscale=true`
#### ExtensionInfo
_( object )_
已安裝的擴展或應用的的信息。
`id`_( string )_
該擴展的唯一ID。
`name`_( string )_
擴展或應用的名字。
`description`_( string )_
擴展或應用的描述信息。
`version`_( string )_
擴展或應用的[版本](manifest.html#version)。
`mayDisable`_( boolean )_
該擴展是否允許用戶禁用和卸載。
`enabled`_( boolean )_
該擴展當前是否被啟用或禁用。
`disabledReason`_( optional enumerated string ["unknown", "permissions_increase"] )_
當前擴展或應用被禁用的原因。
`isApp`_( boolean )_
是否是應用,如果true,則是。
`appLaunchUrl`_( optional string )_
應用的啟動URL。
`homepageUrl`_( optional string )_
擴展或應用的主頁。
`updateUrl`_( optional string )_
擴展或應用的升級頁。
`offlineEnabled`_( boolean )_
擴展或應用是否支持離線使用。
`optionsUrl`_( string )_
擴展或應用的選項頁,如果它們進行選項配置的話。
`icons`_( optional array of [IconInfo](#type-IconInfo) )_
包含所有圖標信息。注意這只反映聲明在清單文件中的信息,URL指定的實際圖像可能比聲明的更大或更小,所以您引用這些圖像時可能要考慮在圖像標簽中顯式使用width和height屬性。有關更多細節,請參見[manifest documentation on icons](manifest.html#icons)。
`permissions`_( array of string )_
根據授權情況返回允許使用的所有API列表。
`hostPermissions`_( array of string )_
根據授權情況返回所有允許訪問的主機白名單。
- 基礎文檔
- 綜述
- 調試
- 格式:Manifest文件
- 模式匹配
- 改變瀏覽器外觀
- Browser Actions
- Context Menus
- 桌面通知
- Omnibox
- Override替代頁
- Page Actions
- 主題
- 與瀏覽器交互
- 書簽
- Cookies
- chrome.devtools.* APIs
- Events
- chrome.history
- Management
- 標簽
- 視窗
- 實現擴展
- 無障礙性(a11y)
- 背景頁
- Content Scripts
- 跨域 XMLHttpRequest 請求
- 國際化 (i18n)
- 消息傳遞
- Optional Permissions
- NPAPI 插件
- 完成并發布應用
- 自動升級
- 托管
- 打包
- 規范和協議
- 應用設計規范
- 開發人員協議
- 免責聲明