說明
chrome.management
API 可讓您管理已安裝的應用程式和擴充功能。
權限
management
資訊清單
您必須宣告「管理」擴充功能資訊清單中所列的權限,才能使用管理服務 也能使用 Google Cloud CLI 或 Compute Engine API例如:
{
"name": "My extension",
...
"permissions": [
"management"
],
...
}
management.getPermissionWarningsByManifest
、management.uninstallSelf
和
management.getSelf
不需要管理權限。
類型
ExtensionDisabledReason
商品停用的原因。
列舉
"未知"
"permissions_increase"
ExtensionInfo
已安裝的擴充功能、應用程式或主題的相關資訊。
屬性
-
appLaunchUrl
string optional
啟動網址 (僅適用於應用程式)。
-
availableLaunchTypes
LaunchType[] 選用
目前可用的啟動類型 (僅適用於應用程式)。
-
說明
字串
這項擴充功能、應用程式或主題的說明。
-
disabledReason
商品停用的原因。
-
已啟用
布林值
目前啟用或停用狀態。
-
homepageUrl
string optional
這個擴充功能、應用程式或主題的首頁網址。
-
hostPermissions
string[]
傳回主機層級權限清單。
-
圖示
IconInfo[] 選用
圖示資訊清單。請注意,這只會反映資訊清單中宣告的內容,而該網址的實際圖片可能會大於或小於宣告的網址,因此建議您在參照這些圖片的 img 標記上使用明確寬度和高度屬性。詳情請參閱圖示的資訊清單說明文件。
-
id
字串
擴充功能的專屬 ID。
-
installType
擴充功能的安裝方式。
-
isApp
布林值
已淘汰請使用
management.ExtensionInfo.type
。如果這是應用程式,則為 True。
-
launchType
LaunchType 選用
應用程式啟動類型 (僅適用於應用程式)。
-
mayDisable
布林值
是否可由使用者停用或解除安裝這項擴充功能。
-
mayEnable
布林值 選填
Chrome 62 以上版本是否可由使用者啟用這項擴充功能。只有未啟用的擴充功能才會傳回這個錯誤。
-
名稱
字串
這個擴充功能、應用程式或主題的名稱。
-
offlineEnabled
布林值
擴充功能、應用程式或主題是否宣告其支援離線功能。
-
optionsUrl
字串
項目選項網頁的網址 (如果有的話)。
-
權限
string[]
傳回以 API 為基礎的權限清單。
-
簡稱
字串
這項擴充功能、應用程式或主題的簡短名稱。
-
這個擴充功能、應用程式或主題的類型。
-
updateUrl
string optional
這項擴充功能、應用程式或主題的更新網址。
-
版本
字串
這個擴充功能、應用程式或主題的版本。
-
versionName
string optional
Chrome 50 以上版本這個擴充功能、應用程式或主題的版本名稱 (如有指定資訊清單)。
ExtensionInstallType
擴充功能的安裝方式。下列其中一項
admin
:這項擴充功能因管理政策而安裝。
development
:擴充功能在開發人員模式中已解壓縮,
normal
:擴充功能通常是透過 .crx 檔案安裝,
sideload
:這項擴充功能是由電腦上的其他軟體安裝
other
:擴充功能是透過其他方式安裝。
列舉
"admin"
"development"
"normal"
"側載"
「其他」
ExtensionType
這個擴充功能、應用程式或主題的類型。
列舉
「擴充功能」
"Hosted_app"
"packaged_app"
"legacy_packaged_app"
"主題"
"login_screen_extension"
IconInfo
擴充功能、應用程式或主題的圖示相關資訊。
屬性
-
大小
數字
代表圖示寬度和高度的數字。可能的值包括 (但不限於) 128、48、24 和 16。
-
網址
字串
這個圖示圖片的網址。如要顯示灰階圖示版本 (例如表示擴充功能已停用),請在網址後面加上
?grayscale=true
。
LaunchType
以下是所有可能的應用程式啟動類型。
列舉
"OPEN_AS_REGULAR_TAB"
"OPEN_AS_PINNED_TAB"
「OPEN_AS_WINDOW」
「OPEN_FULL_SCREEN」
UninstallOptions
處理擴充功能解除安裝作業的方式。
屬性
-
showConfirmDialog
布林值 選填
是否要提示使用者確認解除安裝對話方塊。自行解除安裝的預設值為 false。如果擴充功能解除安裝其他擴充功能,系統就會忽略這個參數,並一律顯示對話方塊。
方法
createAppShortcut()
chrome.management.createAppShortcut(
id: string,
callback?: function,
)
顯示為應用程式建立捷徑的選項。在 Mac 上,您只能建立封裝應用程式捷徑。
參數
-
id
字串
這個 ID 應來自
management.ExtensionInfo
的應用程式項目。 -
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
generateAppForLink()
chrome.management.generateAppForLink(
url: string,
title: string,
callback?: function,
)
為網址產生應用程式。傳回系統產生的書籤應用程式。
參數
-
網址
字串
網頁的網址。網址配置必須是「http」或「https」
-
title
字串
產生的應用程式名稱。
-
回呼
函式 選用
callback
參數如下所示:(result: ExtensionInfo) => void
傳回
-
Promise<ExtensionInfo>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
get()
chrome.management.get(
id: string,
callback?: function,
)
傳回已安裝擴充功能、應用程式或主題 (具有指定 ID) 的資訊。
參數
-
id
字串
「
management.ExtensionInfo
」項目的 ID。 -
回呼
函式 選用
callback
參數如下所示:(result: ExtensionInfo) => void
傳回
-
Promise<ExtensionInfo>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
getAll()
chrome.management.getAll(
callback?: function,
)
傳回已安裝擴充功能和應用程式的資訊清單。
參數
-
回呼
函式 選用
callback
參數如下所示:(result: ExtensionInfo[]) => void
-
結果
-
傳回
-
Promise<ExtensionInfo[]>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
getPermissionWarningsById()
chrome.management.getPermissionWarningsById(
id: string,
callback?: function,
)
傳回指定擴充功能 ID 的權限警告清單。
參數
-
id
字串
已安裝擴充功能的 ID。
-
回呼
函式 選用
callback
參數如下所示:(permissionWarnings: string[]) => void
-
permissionWarnings
string[]
-
傳回
-
Promise<string[]>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
getPermissionWarningsByManifest()
chrome.management.getPermissionWarningsByManifest(
manifestStr: string,
callback?: function,
)
傳回指定擴充功能資訊清單字串的權限警告清單。注意:這個函式可以在不要求「management」的情況下使用權限。
參數
-
manifestStr
字串
擴充功能資訊清單 JSON 字串。
-
回呼
函式 選用
callback
參數如下所示:(permissionWarnings: string[]) => void
-
permissionWarnings
string[]
-
傳回
-
Promise<string[]>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
getSelf()
chrome.management.getSelf(
callback?: function,
)
傳回呼叫擴充功能、應用程式或主題的相關資訊。注意:這個函式可以在不要求「management」的情況下使用權限。
參數
-
回呼
函式 選用
callback
參數如下所示:(result: ExtensionInfo) => void
傳回
-
Promise<ExtensionInfo>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
installReplacementWebApp()
chrome.management.installReplacementWebApp(
callback?: function,
)
啟動資訊清單中指定的 replace_web_app。如果使用者尚未安裝,則提示使用者進行安裝。
參數
-
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
launchApp()
chrome.management.launchApp(
id: string,
callback?: function,
)
啟動應用程式。
參數
-
id
字串
應用程式的擴充功能 ID。
-
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
setEnabled()
chrome.management.setEnabled(
id: string,
enabled: boolean,
callback?: function,
)
啟用或停用應用程式或擴充功能。在大多數情況下,您必須在使用者手勢 (例如按鈕的 click 處理常式) 中呼叫此函式,且可能會向使用者提供原生確認 UI 以防止濫用。
參數
-
id
字串
這應是
management.ExtensionInfo
項目的 ID。 -
已啟用
布林值
是否應啟用或停用這個項目。
-
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
setLaunchType()
chrome.management.setLaunchType(
id: string,
launchType: LaunchType,
callback?: function,
)
設定應用程式的啟動類型。
參數
-
id
字串
這個 ID 應來自
management.ExtensionInfo
的應用程式項目。 -
launchType
目標啟動類型。請務必檢查並確認啟動類型是
ExtensionInfo.availableLaunchTypes
,因為可用的啟動類型會因平台和設定而異。 -
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
uninstall()
chrome.management.uninstall(
id: string,
options?: UninstallOptions,
callback?: function,
)
解除安裝目前安裝的應用程式或擴充功能。注意:如果使用者無法解除安裝指定的擴充功能/應用程式,這個函式就無法在受管理的環境中運作。如果解除安裝失敗 (例如使用者取消對話方塊),承諾會遭到拒絕,或系統會透過設定 runtime.lastError
呼叫回呼。
參數
-
id
字串
這應是
management.ExtensionInfo
項目的 ID。 -
選項
-
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
uninstallSelf()
chrome.management.uninstallSelf(
options?: UninstallOptions,
callback?: function,
)
解除安裝通話擴充功能。注意:這個函式可以在不要求「management」的情況下使用權限。如果使用者無法解除安裝指定的擴充功能/應用程式,這個函式就無法在受管理的環境中運作。
參數
-
選項
-
回呼
函式 選用
callback
參數如下所示:() => void
傳回
-
承諾<void>
Chrome 88 以上版本Promise 僅適用於 Manifest V3 及以上版本,其他平台需要使用回呼。
活動
onDisabled
chrome.management.onDisabled.addListener(
callback: function,
)
應用程式或擴充功能停用時觸發。
參數
-
回呼
函式
callback
參數如下所示:(info: ExtensionInfo) => void
onEnabled
chrome.management.onEnabled.addListener(
callback: function,
)
啟用應用程式或擴充功能時觸發。
參數
-
回呼
函式
callback
參數如下所示:(info: ExtensionInfo) => void
onInstalled
chrome.management.onInstalled.addListener(
callback: function,
)
已安裝應用程式或擴充功能時觸發。
參數
-
回呼
函式
callback
參數如下所示:(info: ExtensionInfo) => void
onUninstalled
chrome.management.onUninstalled.addListener(
callback: function,
)
解除安裝應用程式或擴充功能時觸發。
參數
-
回呼
函式
callback
參數如下所示:(id: string) => void
-
id
字串
-