说明
chrome.management
API 提供了管理已安装和正在运行的扩展程序/应用列表的方法。该标签页对于会覆盖内置“新标签页”页面的扩展程序特别有用。
权限
management
您必须在扩展程序清单中声明“管理”权限,才能使用 Management API。例如:
{
"name": "My extension",
...
"permissions": [
"management"
],
...
}
management.getPermissionWarningsByManifest()
、management.uninstallSelf()
和 management.getSelf()
不需要管理权限。
类型
ExtensionDisabledReason
产品停用的原因。
枚举
"permissions_increase"
ExtensionInfo
有关已安装的扩展程序、应用或主题的信息。
属性
-
appLaunchUrl
字符串(可选)
启动网址(仅适用于应用)。
-
availableLaunchTypes
LaunchType[] 可选
当前可用的启动类型(仅适用于应用)。
-
说明
string
此扩展程序、应用或主题的说明。
-
disabledReason
产品停用的原因。
-
已启用
boolean
当前已启用还是已停用。
-
homepageUrl
字符串(可选)
此扩展程序、应用或主题背景的首页网址。
-
hostPermissions
字符串[]
返回基于主机的权限列表。
-
图标
IconInfo[] 可选
图标信息列表。请注意,这只是反映清单中声明的内容,该网址的实际图片可能大于或小于所声明的图片,因此您可以考虑对引用这些图片的 img 标记使用明确的宽度和高度属性。如需了解详情,请参阅有关图标的清单文档。
-
id
string
扩展程序的唯一标识符。
-
installType
扩展程序的安装方式。
-
isApp
boolean
已废弃请使用
management.ExtensionInfo.type
。如果这是一个应用,则为 True。
-
launchType
LaunchType 可选
应用启动类型(仅适用于应用)。
-
mayDisable
boolean
用户能否停用或卸载此扩展程序。
-
mayEnable
布尔值 选填
Chrome 62 及更高版本用户是否可以启用此扩展程序。仅会针对未启用的扩展程序返回此值。
-
name
string
此扩展程序、应用或主题的名称。
-
offlineEnabled
boolean
扩展程序、应用或主题是否声明其支持离线功能。
-
optionsUrl
string
商品的选项页面的网址(如果有)。
-
权限
字符串[]
返回基于 API 的权限列表。
-
shortName
string
此扩展程序、应用或主题的名称的简短版本。
-
此扩展程序、应用或主题背景的类型。
-
updateUrl
字符串(可选)
此扩展程序、应用或主题的更新网址。
-
版本
string
此扩展程序、应用或主题背景的版本。
-
versionName
字符串(可选)
Chrome 50 及更高版本此扩展程序、应用或主题背景的版本名称(如果清单已指定)。
ExtensionInstallType
扩展程序的安装方式。以下项之一:admin
:扩展程序是根据管理政策安装的;
development
:扩展程序是在开发者模式下解压缩;
normal
:扩展程序是通过 .crx 文件正常安装的;
sideload
:扩展程序是通过计算机上的其他软件安装的;
other
:扩展程序是通过其他方式安装的。
枚举
"normal"
"sideload"
ExtensionType
此扩展程序、应用或主题背景的类型。
枚举
"packaged_app"
"legacy_packaged_app"
"login_screen_extension"
IconInfo
属于扩展程序、应用或主题的图标的信息。
属性
-
大小
number
一个数字,表示图标的宽度和高度。可能的值包括(但不限于)128、48、24 和 16。
-
网址
string
此图标图片的网址。如需显示图标的灰度版本(例如,表明某个扩展程序已停用),请将
?grayscale=true
附加到网址。
LaunchType
这些都是可能的应用启动类型。
枚举
"OPEN_AS_REGULAR_TAB"
"OPEN_AS_WINDOW"
UninstallOptions
有关如何处理扩展程序卸载事宜的选项。
属性
-
showConfirmDialog
布尔值 选填
确认卸载对话框是否应提示用户。对于自行卸载,默认值为 false。如果某个扩展程序卸载了其他扩展程序,系统会忽略此参数并始终显示对话框。
方法
createAppShortcut()
chrome.management.createAppShortcut(
id: string,
callback?: function,
)
显示为应用创建快捷方式的选项。在 Mac 上,只能创建封装应用快捷方式。
参数
-
id
string
此 ID 应该是
management.ExtensionInfo
的应用项的 ID。 -
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
generateAppForLink()
chrome.management.generateAppForLink(
url: string,
title: string,
callback?: function,
)
为网址生成应用。返回生成的书签应用。
参数
-
网址
string
网页的网址。网址的架构只能是“http”或“https”。
-
title
string
生成的应用的名称。
-
callback
函数(可选)
callback
参数如下所示:(result: ExtensionInfo) => void
返回
-
Promise<ExtensionInfo>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
get()
chrome.management.get(
id: string,
callback?: function,
)
返回具有指定 ID 的已安装扩展程序、应用或主题的相关信息。
参数
-
id
string
management.ExtensionInfo
的项中的 ID。 -
callback
函数(可选)
callback
参数如下所示:(result: ExtensionInfo) => void
返回
-
Promise<ExtensionInfo>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
getAll()
chrome.management.getAll(
callback?: function,
)
返回有关已安装的扩展程序和应用的信息列表。
参数
-
callback
函数(可选)
callback
参数如下所示:(result: ExtensionInfo[]) => void
-
结果
-
返回
-
Promise<ExtensionInfo[]>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
getPermissionWarningsById()
chrome.management.getPermissionWarningsById(
id: string,
callback?: function,
)
针对指定的扩展程序 ID,返回权限警告列表。
参数
-
id
string
已安装的扩展程序的 ID。
-
callback
函数(可选)
callback
参数如下所示:(permissionWarnings: string[]) => void
-
permissionWarnings
字符串[]
-
返回
-
Promise<string[]>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
getPermissionWarningsByManifest()
chrome.management.getPermissionWarningsByManifest(
manifestStr: string,
callback?: function,
)
针对指定的扩展程序清单字符串,返回权限警告列表。注意:此函数无需在清单中请求“管理”权限即可使用。
参数
-
manifestStr
string
扩展程序清单 JSON 字符串。
-
callback
函数(可选)
callback
参数如下所示:(permissionWarnings: string[]) => void
-
permissionWarnings
字符串[]
-
返回
-
Promise<string[]>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
getSelf()
chrome.management.getSelf(
callback?: function,
)
返回有关通话扩展程序、应用或主题的信息。注意:此函数无需在清单中请求“管理”权限即可使用。
参数
-
callback
函数(可选)
callback
参数如下所示:(result: ExtensionInfo) => void
返回
-
Promise<ExtensionInfo>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
installReplacementWebApp()
chrome.management.installReplacementWebApp(
callback?: function,
)
启动在清单中指定的 replace_web_app 文件。提示用户安装(如果尚未安装)。
参数
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
launchApp()
chrome.management.launchApp(
id: string,
callback?: function,
)
启动应用。
参数
-
id
string
应用的扩展程序 ID。
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
setEnabled()
chrome.management.setEnabled(
id: string,
enabled: boolean,
callback?: function,
)
启用或停用应用或扩展程序。在大多数情况下,此函数必须在用户手势的上下文中调用(例如,按钮的 on 处理程序),并且可能会向用户显示原生确认界面,以作为防止滥用的一种方式。
参数
-
id
string
此 ID 应该是
management.ExtensionInfo
的商品的 ID。 -
已启用
boolean
此项内容应启用还是停用。
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
setLaunchType()
chrome.management.setLaunchType(
id: string,
launchType: LaunchType,
callback?: function,
)
设置应用的启动类型。
参数
-
id
string
此 ID 应该是
management.ExtensionInfo
的应用项的 ID。 -
launchType
目标发布类型。请务必检查并确保此启动类型位于
ExtensionInfo.availableLaunchTypes
中,因为可用的启动类型因平台和配置而异。 -
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
uninstall()
chrome.management.uninstall(
id: string,
options?: UninstallOptions,
callback?: function,
)
卸载当前已安装的应用或扩展程序。注意:当系统不允许用户卸载指定的扩展程序/应用时,此函数在受管理环境中不起作用。如果卸载失败(例如用户取消对话框),则 promise 会被拒绝,或者调用回调函数并设置 runtime.lastError
。
参数
-
id
string
此 ID 应该是
management.ExtensionInfo
的商品的 ID。 -
选项
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
uninstallSelf()
chrome.management.uninstallSelf(
options?: UninstallOptions,
callback?: function,
)
卸载通话扩展程序。注意:此函数无需在清单中请求“管理”权限即可使用。当不允许用户卸载指定的扩展程序/应用时,此函数在受管理环境中不起作用。
参数
-
选项
-
callback
函数(可选)
callback
参数如下所示:() => void
返回
-
Promise<void>
Chrome 88 及更高版本Manifest V3 及更高版本支持 promise,但提供回调以实现向后兼容性。您不能在同一个函数调用中同时使用这两者。promise 使用传递给回调函数的同一类型进行解析。
活动
onDisabled
chrome.management.onDisabled.addListener(
callback: function,
)
在应用或扩展程序被停用时触发。
参数
-
callback
功能
callback
参数如下所示:(info: ExtensionInfo) => void
onEnabled
chrome.management.onEnabled.addListener(
callback: function,
)
在启用应用或扩展程序时触发。
参数
-
callback
功能
callback
参数如下所示:(info: ExtensionInfo) => void
onInstalled
chrome.management.onInstalled.addListener(
callback: function,
)
在用户安装了应用或扩展程序时触发。
参数
-
callback
功能
callback
参数如下所示:(info: ExtensionInfo) => void
onUninstalled
chrome.management.onUninstalled.addListener(
callback: function,
)
在应用或扩展程序被卸载时触发。
参数
-
callback
功能
callback
参数如下所示:(id: string) => void
-
id
string
-