chrome.management

Descrição

A API chrome.management oferece maneiras de gerenciar apps e extensões instalados.

Permissões

management

Manifesto

É necessário declarar a permissão "management" no manifesto da extensão para usar a API management. Exemplo:

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

management.getPermissionWarningsByManifest, management.uninstallSelf e management.getSelf não exigem a permissão de gerenciamento.

Tipos

ExtensionDisabledReason

Chrome 44 ou mais recente

Um motivo para a desativação do item.

Enumeração

"unknown"

"permissions_increase"

ExtensionInfo

Informações sobre uma extensão, um app ou um tema instalado.

Propriedades

  • appLaunchUrl

    string opcional

    O URL de lançamento (presente apenas para apps).

  • availableLaunchTypes

    LaunchType[] opcional

    Os tipos de inicialização disponíveis no momento (presentes apenas para apps).

  • descrição

    string

    A descrição da extensão, do app ou do tema.

  • disabledReason

    Um motivo para a desativação do item.

  • ativado

    booleano

    Se ela está ativada ou desativada no momento.

  • homepageUrl

    string opcional

    O URL da página inicial dessa extensão, app ou tema.

  • hostPermissions

    string[]

    Retorna uma lista de permissões baseadas em host.

  • ícones

    IconInfo[] opcional

    Uma lista de informações de ícones. Isso reflete apenas o que foi declarado no manifesto. A imagem real nesse URL pode ser maior ou menor do que o declarado. Por isso, considere usar atributos de largura e altura explícitos em tags "img" que referenciam essas imagens. Consulte a documentação do manifesto sobre ícones para saber mais.

  • ID

    string

    O identificador exclusivo da extensão.

  • installType

    Como a extensão foi instalada.

  • isApp

    booleano

    Descontinuado

    Use management.ExtensionInfo.type.

    "True", se for um app.

  • launchType

    LaunchType opcional

    O tipo de inicialização do app (presente apenas para apps).

  • mayDisable

    booleano

    Se a extensão pode ser desativada ou desinstalada pelo usuário.

  • mayEnable

    booleano opcional

    Chrome 62 ou mais recente

    Indica se a extensão pode ser ativada pelo usuário. Isso só é retornado para extensões que não estão ativadas.

  • nome

    string

    O nome da extensão, do app ou do tema.

  • offlineEnabled

    booleano

    Se a extensão, o app ou o tema declara que é compatível com o modo off-line.

  • optionsUrl

    string

    O URL da página de opções do item, se houver.

  • permissões

    string[]

    Retorna uma lista de permissões baseadas em API.

  • shortName

    string

    Uma versão curta do nome da extensão, do app ou do tema.

  • O tipo de extensão, app ou tema.

  • updateUrl

    string opcional

    O URL de atualização dessa extensão, app ou tema.

  • version

    string

    A versão dessa extensão, app ou tema.

  • versionName

    string opcional

    Chrome 50 ou mais recente

    O nome da versão dessa extensão, app ou tema, se o manifesto tiver especificado um.

ExtensionInstallType

Chrome 44 ou mais recente

Como a extensão foi instalada. Um dos seguintes: admin: a extensão foi instalada devido a uma política administrativa; development: a extensão foi carregada descompactada no modo de desenvolvedor; normal: a extensão foi instalada normalmente por um arquivo .crx; sideload: a extensão foi instalada por outro software na máquina; other: a extensão foi instalada por outros meios.

Enumeração

"admin"

"development"

"normal"

"sideload"

"other"

ExtensionType

Chrome 44 ou mais recente

O tipo de extensão, app ou tema.

Enumeração

"extension"

"hosted_app"

"packaged_app"

"legacy_packaged_app"

"theme"

"login_screen_extension"

IconInfo

Informações sobre um ícone pertencente a uma extensão, um app ou um tema.

Propriedades

  • tamanho

    número

    Um número que representa a largura e a altura do ícone. Os valores prováveis incluem (mas não se limitam a) 128, 48, 24 e 16.

  • url

    string

    O URL da imagem do ícone. Para mostrar uma versão em escala de cinza do ícone (para indicar que uma extensão está desativada, por exemplo), anexe ?grayscale=true ao URL.

LaunchType

Estes são todos os tipos possíveis de inicialização de apps.

Enumeração

"OPEN_AS_REGULAR_TAB"

"OPEN_AS_PINNED_TAB"

"OPEN_AS_WINDOW"

"OPEN_FULL_SCREEN"

UninstallOptions

Chrome 88 ou mais recente

Opções de como lidar com a desinstalação da extensão.

Propriedades

  • showConfirmDialog

    booleano opcional

    Indica se uma caixa de diálogo de confirmação de desinstalação precisa ser mostrada ao usuário. O padrão é "false" para desinstalações automáticas. Se uma extensão desinstalar outra, esse parâmetro será ignorado, e a caixa de diálogo sempre será mostrada.

Métodos

createAppShortcut()

Promise
chrome.management.createAppShortcut(
  id: string,
  callback?: function,
)
: Promise<void>

Mostra opções para criar atalhos de um app. No Mac, só é possível criar atalhos de apps empacotados.

Parâmetros

  • ID

    string

    Precisa ser o ID de um item de app de management.ExtensionInfo.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

Promise
chrome.management.generateAppForLink(
  url: string,
  title: string,
  callback?: function,
)
: Promise<ExtensionInfo>

Gere um app para um URL. Retorna o app de favoritos gerado.

Parâmetros

  • string

    O URL de uma página da Web. O esquema do URL só pode ser "http" ou "https".

  • string

    O título do app gerado.

  • função opcional

    O parâmetro callback tem esta aparência:

    (result: ExtensionInfo) => void

Retorna

  • Promise<ExtensionInfo>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

get()

Promise
chrome.management.get(
  id: string,
  callback?: function,
)
: Promise<ExtensionInfo>

Retorna informações sobre a extensão, o app ou o tema instalado com o ID especificado.

Parâmetros

Retorna

  • Promise<ExtensionInfo>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getAll()

Promise
chrome.management.getAll(
  callback?: function,
)
: Promise<ExtensionInfo[]>

Retorna uma lista de informações sobre extensões e apps instalados.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (result: ExtensionInfo[]) => void

Retorna

  • Promise<ExtensionInfo[]>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getPermissionWarningsById()

Promise
chrome.management.getPermissionWarningsById(
  id: string,
  callback?: function,
)
: Promise<string[]>

Retorna uma lista de avisos de permissão para o ID de extensão especificado.

Parâmetros

  • ID

    string

    O ID de uma extensão já instalada.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (permissionWarnings: string[]) => void

    • permissionWarnings

      string[]

Retorna

  • Promise<string[]>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getPermissionWarningsByManifest()

Promise
chrome.management.getPermissionWarningsByManifest(
  manifestStr: string,
  callback?: function,
)
: Promise<string[]>

Retorna uma lista de avisos de permissão para a determinada string de manifesto de extensão. Observação: essa função pode ser usada sem solicitar a permissão "management" no manifesto.

Parâmetros

  • manifestStr

    string

    String JSON do manifesto da extensão.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (permissionWarnings: string[]) => void

    • permissionWarnings

      string[]

Retorna

  • Promise<string[]>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getSelf()

Promise
chrome.management.getSelf(
  callback?: function,
)
: Promise<ExtensionInfo>

Retorna informações sobre a extensão, o app ou o tema de chamada. Observação: essa função pode ser usada sem solicitar a permissão "management" no manifesto.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    (result: ExtensionInfo) => void

Retorna

  • Promise<ExtensionInfo>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

installReplacementWebApp()

Promise Chrome 77 ou mais recente
chrome.management.installReplacementWebApp(
  callback?: function,
)
: Promise<void>

Inicia o replacement_web_app especificado no manifesto. Solicita que o usuário instale o app, caso ainda não tenha feito isso.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

launchApp()

Promise
chrome.management.launchApp(
  id: string,
  callback?: function,
)
: Promise<void>

Inicia um aplicativo.

Parâmetros

  • ID

    string

    O ID da extensão do aplicativo.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

setEnabled()

Promise
chrome.management.setEnabled(
  id: string,
  enabled: boolean,
  callback?: function,
)
: Promise<void>

Ativa ou desativa um app ou uma extensão. Na maioria dos casos, essa função precisa ser chamada no contexto de um gesto do usuário (por exemplo, um manipulador onclick para um botão) e pode apresentar ao usuário uma interface de confirmação nativa como forma de evitar abusos.

Parâmetros

  • ID

    string

    Precisa ser o ID de um item de management.ExtensionInfo.

  • ativado

    booleano

    Se o item deve ser ativado ou desativado.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

setLaunchType()

Promise
chrome.management.setLaunchType(
  id: string,
  launchType: LaunchType,
  callback?: function,
)
: Promise<void>

Defina o tipo de inicialização de um app.

Parâmetros

  • ID

    string

    Precisa ser o ID de um item de app de management.ExtensionInfo.

  • launchType

    O tipo de lançamento de destino. Sempre verifique se esse tipo de inicialização está em ExtensionInfo.availableLaunchTypes, porque os tipos disponíveis variam em diferentes plataformas e configurações.

  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

uninstall()

Promise
chrome.management.uninstall(
  id: string,
  options?: UninstallOptions,
  callback?: function,
)
: Promise<void>

Desinstala um app ou uma extensão instalada no momento. Observação: essa função não funciona em ambientes gerenciados quando o usuário não tem permissão para desinstalar a extensão/app especificado. Se a desinstalação falhar (por exemplo, se o usuário cancelar a caixa de diálogo), a promessa será rejeitada ou o callback será chamado com runtime.lastError definido.

Parâmetros

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

uninstallSelf()

Promise
chrome.management.uninstallSelf(
  options?: UninstallOptions,
  callback?: function,
)
: Promise<void>

Desinstala a extensão de chamada. Observação: essa função pode ser usada sem solicitar a permissão "management" no manifesto. Essa função não funciona em ambientes gerenciados quando o usuário não tem permissão para desinstalar a extensão/app especificado.

Parâmetros

  • opções
  • callback

    função opcional

    O parâmetro callback tem esta aparência:

    () => void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

Eventos

onDisabled

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

Disparado quando um app ou uma extensão é desativado.

Parâmetros

onEnabled

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

Disparado quando um app ou uma extensão é ativada.

Parâmetros

onInstalled

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

Acionado quando um app ou uma extensão é instalado.

Parâmetros

onUninstalled

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

Disparado quando um app ou uma extensão é desinstalado.

Parâmetros

  • callback

    função

    O parâmetro callback tem esta aparência:

    (id: string) => void

    • ID

      string