chrome.management

Descripción

La API de chrome.management proporciona formas de administrar la lista de extensiones o apps instaladas y en ejecución. Es particularmente útil para extensiones que anulan la página Nueva pestaña integrada.

Permisos

management

Debes declarar el permiso de "administración" en el manifiesto de extensión para usar la API de administración. Por ejemplo:

{
  "name": "My extension",
  ...
  "permissions": [
    "management"
  ],
  ...
}

management.getPermissionWarningsByManifest(), management.uninstallSelf() y management.getSelf() no requieren el permiso de administración.

Tipos

ExtensionDisabledReason

Chrome 44 y versiones posteriores

Un motivo por el que se inhabilitó el elemento.

Enum

ExtensionInfo

Incluye información sobre una extensión, una app o un tema instalados.

Propiedades

  • appLaunchUrl

    cadena opcional

    La URL de inicio (solo presente para apps).

  • availableLaunchTypes

    LaunchType[] opcional.

    Los tipos de lanzamiento disponibles actualmente (solo presentes para apps)

  • descripción

    cadena

    Es la descripción de esta extensión, app o tema.

  • disabledReason

    Un motivo por el que se inhabilitó el elemento.

  • habilitado

    boolean

    Si está habilitado o inhabilitado actualmente

  • homepageUrl

    cadena opcional

    La URL de la página principal de esta extensión, app o tema.

  • hostPermissions

    string[]

    Muestra una lista de permisos basados en host.

  • íconos

    IconInfo[] opcional

    Lista de información de íconos. Ten en cuenta que esto solo refleja lo que se declaró en el manifiesto y que la imagen real en esa URL puede ser más grande o más pequeña que lo que se declaró, por lo que puedes considerar el uso de atributos explícitos de ancho y alto en las etiquetas img que hacen referencia a estas imágenes. Para obtener más información, consulta la documentación del manifiesto sobre íconos.

  • id

    cadena

    Es el identificador único de la extensión.

  • installType

    La forma en que se instaló la extensión.

  • isApp

    boolean

    Obsoleto

    Usa management.ExtensionInfo.type.

    Es verdadero si es una app.

  • launchType

    LaunchType (opcional).

    El tipo de inicio de la app (solo presente para las apps)

  • mayDisable

    boolean

    Establece si el usuario puede inhabilitar o desinstalar esta extensión.

  • mayEnable

    booleano opcional

    Chrome 62 y versiones posteriores

    Establece si el usuario puede habilitar esta extensión. Este valor solo se muestra para las extensiones que no están habilitadas.

  • name

    cadena

    Es el nombre de la extensión, la app o el tema.

  • offlineEnabled

    boolean

    Indica si la extensión, la app o el tema declaran que son compatibles sin conexión.

  • optionsUrl

    cadena

    Es la URL de la página de opciones del artículo, si tiene una.

  • permisos

    string[]

    Muestra una lista de permisos basados en la API.

  • shortName

    cadena

    Una versión breve del nombre de esta extensión, app o tema.

  • Es el tipo de extensión, app o tema.

  • updateUrl

    cadena opcional

    La URL de actualización de esta extensión, app o tema.

  • versión

    cadena

    La versión de esta extensión, app o tema.

  • versionName

    cadena opcional

    Chrome 50 y versiones posteriores

    Es el nombre de la versión de la extensión, la app o el tema si el manifiesto especificó uno.

ExtensionInstallType

Chrome 44 y versiones posteriores

La forma en que se instaló la extensión. Una de las siguientes opciones: admin: La extensión se instaló debido a una política administrativa; development: La extensión se cargó desempaquetada en modo de desarrollador. normal: La extensión se instaló normalmente a través de un archivo .crx. sideload: La extensión se instaló con otro software en la máquina. other: La extensión se instaló por otros medios.

Enum

ExtensionType

Chrome 44 y versiones posteriores

Es el tipo de extensión, app o tema.

Enum

"legacy_packaged_app"

"login_screen_extension"

IconInfo

Incluye información sobre un ícono que pertenece a una extensión, una app o un tema.

Propiedades

  • tamaño

    número

    Es un número que representa el ancho y el alto del ícono. Los valores probables incluyen, entre otros, 128, 48, 24 y 16.

  • url

    cadena

    La URL de esta imagen de ícono. Si deseas mostrar una versión en escala de grises del ícono (por ejemplo, para indicar que una extensión está inhabilitada), agrega ?grayscale=true a la URL.

LaunchType

Todos estos son los tipos posibles de lanzamiento de apps.

Enum

"OPEN_AS_REGULAR_TAB"

"OPEN_AS_PINNED_TAB"

"OPEN_AS_WINDOW"

"OPEN_FULL_SCREEN"

UninstallOptions

Chrome 88 y versiones posteriores

Opciones para controlar la desinstalación de la extensión.

Propiedades

  • showConfirmDialog

    booleano opcional

    Indica si se debe mostrar al usuario un diálogo de confirmación y desinstalación. La configuración predeterminada es "false" para las autodesinstalaciones. Si una extensión desinstala otra extensión, este parámetro se ignora y siempre se muestra el diálogo.

Métodos

createAppShortcut()

Promesa
chrome.management.createAppShortcut(
  id: string,
  callback?: function,
)

Se muestran opciones de visualización para crear accesos directos a aplicaciones. En Mac, solo se pueden crear accesos directos a aplicaciones empaquetadas.

Parámetros

  • id

    cadena

    Debe ser el ID de un elemento de la app de management.ExtensionInfo.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

Promesa
chrome.management.generateAppForLink(
  url: string,
  title: string,
  callback?: function,
)

Genera una app para una URL. Muestra la app de favoritos generada.

Parámetros

  • cadena

    La URL de una página web. El esquema de la URL solo puede ser “http” o “https”.

  • cadena

    El título de la app generada.

  • Función opcional

    El parámetro callback se ve de la siguiente manera:

    (result: ExtensionInfo)=>void

Devuelve

  • Promise<ExtensionInfo>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

get()

Promesa
chrome.management.get(
  id: string,
  callback?: function,
)

Muestra información sobre la extensión instalada, la app o el tema que tiene el ID determinado.

Parámetros

Devuelve

  • Promise<ExtensionInfo>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

getAll()

Promesa
chrome.management.getAll(
  callback?: function,
)

Muestra una lista de información sobre las extensiones y apps instaladas.

Parámetros

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (result: ExtensionInfo[])=>void

Devuelve

  • Promise<ExtensionInfo[]>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

getPermissionWarningsById()

Promesa
chrome.management.getPermissionWarningsById(
  id: string,
  callback?: function,
)

Muestra una lista de advertencias de permisos para el ID de extensión determinado.

Parámetros

  • id

    cadena

    Es el ID de una extensión ya instalada.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (permissionWarnings: string[])=>void

    • permissionWarnings

      string[]

Devuelve

  • Promesa<string[]>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

getPermissionWarningsByManifest()

Promesa
chrome.management.getPermissionWarningsByManifest(
  manifestStr: string,
  callback?: function,
)

Muestra una lista de advertencias de permisos para la cadena de manifiesto de extensión determinada. Nota: Esta función se puede usar sin solicitar el permiso "management" en el manifiesto.

Parámetros

  • manifestStr

    cadena

    Es la cadena JSON del manifiesto de la extensión.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (permissionWarnings: string[])=>void

    • permissionWarnings

      string[]

Devuelve

  • Promesa<string[]>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

getSelf()

Promesa
chrome.management.getSelf(
  callback?: function,
)

Muestra información sobre la extensión de llamada, la app o el tema. Nota: Esta función se puede usar sin solicitar el permiso "management" en el manifiesto.

Parámetros

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (result: ExtensionInfo)=>void

Devuelve

  • Promise<ExtensionInfo>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

installReplacementWebApp()

Promesa Chrome 77 y versiones posteriores
chrome.management.installReplacementWebApp(
  callback?: function,
)

Inicia la replace_web_app especificada en el manifiesto. Le solicita al usuario que realice la instalación si aún no está instalada.

Parámetros

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

launchApp()

Promesa
chrome.management.launchApp(
  id: string,
  callback?: function,
)

Inicia una aplicación.

Parámetros

  • id

    cadena

    El ID de extensión de la aplicación.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

setEnabled()

Promesa
chrome.management.setEnabled(
  id: string,
  enabled: boolean,
  callback?: function,
)

Habilita o inhabilita una app o extensión. En la mayoría de los casos, se debe llamar a esta función en el contexto de un gesto del usuario (p.ej., un controlador "onclick" para un botón) y se le puede presentar al usuario una IU de confirmación nativa como una manera de evitar el abuso.

Parámetros

  • id

    cadena

    Debe ser el ID de un elemento de management.ExtensionInfo.

  • habilitado

    boolean

    Indica si se debe habilitar o inhabilitar este elemento.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

setLaunchType()

Promesa
chrome.management.setLaunchType(
  id: string,
  launchType: LaunchType,
  callback?: function,
)

Configura el tipo de inicio de una app.

Parámetros

  • id

    cadena

    Debe ser el ID de un elemento de la app de management.ExtensionInfo.

  • launchType

    El tipo de lanzamiento objetivo. Siempre revisa y asegúrate de que este tipo de lanzamiento esté en ExtensionInfo.availableLaunchTypes, ya que los tipos de inicio disponibles varían según las diferentes plataformas y parámetros de configuración.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

uninstall()

Promesa
chrome.management.uninstall(
  id: string,
  options?: UninstallOptions,
  callback?: function,
)

Desinstala una app o extensión instalada actualmente. Nota: Esta función no funciona en entornos administrados cuando el usuario no tiene permitido desinstalar la extensión o la app especificada. Si la desinstalación falla (p.ej., si el usuario cancela el diálogo), se rechazará la promesa o se llamará a la devolución de llamada con runtime.lastError establecido.

Parámetros

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

uninstallSelf()

Promesa
chrome.management.uninstallSelf(
  options?: UninstallOptions,
  callback?: function,
)

Desinstala la extensión de llamada. Nota: Esta función se puede usar sin solicitar el permiso "management" en el manifiesto. Esta función no funciona en entornos administrados cuando el usuario no tiene permitido desinstalar la extensión o la app especificada.

Parámetros

  • Opciones
  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    ()=>void

Devuelve

  • Promise<void>

    Chrome 88 y versiones posteriores

    Las promesas son compatibles con Manifest V3 y versiones posteriores, pero se proporcionan devoluciones de llamada para brindar retrocompatibilidad. No puedes usar ambos en la misma llamada a función. La promesa se resuelve con el mismo tipo que se pasa a la devolución de llamada.

Eventos

onDisabled

chrome.management.onDisabled.addListener(
  callback: function,
)

Se activa cuando se inhabilita una app o extensión.

Parámetros

onEnabled

chrome.management.onEnabled.addListener(
  callback: function,
)

Se activa cuando se habilita una app o extensión.

Parámetros

onInstalled

chrome.management.onInstalled.addListener(
  callback: function,
)

Se activa cuando se instala una app o extensión.

Parámetros

onUninstalled

chrome.management.onUninstalled.addListener(
  callback: function,
)

Se activa cuando se desinstala una app o extensión.

Parámetros

  • callback

    la función

    El parámetro callback se ve de la siguiente manera:

    (id: string)=>void

    • id

      cadena