chrome.management

Descrição

A API chrome.management oferece maneiras de gerenciar a lista de extensões/apps instalados e em execução. Ele é útil principalmente para extensões que substituim a página "Nova guia" integrada.

Permissões

management

É necessário declarar a permissão "management" no manifesto de extensões para usar a API de gerenciamento. 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

O motivo da desativação do item.

Tipo enumerado

ExtensionInfo

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

Propriedades

  • appLaunchUrl

    string opcional

    O URL de início (presente apenas para aplicativos).

  • availableLaunchTypes

    LaunchType[] opcional

    Os tipos de inicialização disponíveis atualmente (presente apenas para apps).

  • descrição

    string

    A descrição dessa extensão, app ou tema.

  • disabledReason

    O motivo da desativação do item.

  • ativado

    boolean

    Se ela está ativada ou desativada no momento.

  • homepageUrl

    string opcional

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

  • hostPermissions

    string[]

    Retorna uma lista de permissões baseadas em host.

  • ícones

    IconInfo[] opcional

    Uma lista de informações do ícone. Isso reflete somente o que foi declarado no manifesto, e a imagem real no URL pode ser maior ou menor do que o declarado. Por isso, você pode considerar o uso de atributos explícitos de largura e altura em tags img que fazem referência a essas imagens. Consulte a documentação do manifesto sobre ícones para mais detalhes.

  • id

    string

    O identificador exclusivo da extensão.

  • installType

    Como a extensão foi instalada.

  • isApp

    boolean

    Descontinuado

    Use management.ExtensionInfo.type.

    Verdadeiro se for um app.

  • launchType

    LaunchType opcional

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

  • mayDisable

    boolean

    Indica 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. Ele só é retornado para extensões que não estão ativadas.

  • name

    string

    O nome dessa extensão, app ou tema.

  • offlineEnabled

    boolean

    Se a extensão, o app ou o tema declara que oferece suporte off-line.

  • optionsUrl

    string

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

  • permissões

    string[]

    Retorna uma lista de permissões baseadas na API.

  • shortName

    string

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

  • digitar

    O tipo da extensão, app ou tema.

  • updateUrl

    string opcional

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

  • versão

    string

    A versão da extensão, do app ou do tema.

  • versionName

    string opcional

    Chrome 50 ou mais recente

    O nome da versão da extensão, app ou tema, se o manifesto especificou um.

ExtensionInstallType

Chrome 44 ou mais recente

Como a extensão foi instalada. Uma destas 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.

Tipo enumerado

"normal"

"sideload"

ExtensionType

Chrome 44 ou mais recente

O tipo da extensão, app ou tema.

Tipo enumerado

"legacy_packaged_app"

"login_screen_extension"

IconInfo

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

Propriedades

  • tamanho

    number

    Um número que representa a largura e a altura do ícone. Os valores prováveis incluem, entre outros, 128, 48, 24 e 16.

  • url

    string

    O URL dessa imagem do ícone. Para exibir 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

Todos esses são os tipos de inicialização de apps possíveis.

Tipo enumerado

"OPEN_AS_REGULAR_TAB"

"OPEN_AS_PINNED_TAB"

"OPEN_AS_WINDOW"

"OPEN_FULL_SCREEN"

UninstallOptions

Chrome 88 ou mais recente

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

Propriedades

  • showConfirmDialog

    booleano opcional

    Se uma caixa de diálogo de confirmação/desinstalação deve perguntar ao usuário ou não. 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á exibida.

Métodos

createAppShortcut()

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

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

Parâmetros

  • id

    string

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

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    ()=>void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

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

Gerar um app para um URL Retorna o aplicativo 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 optional

    O parâmetro callback tem esta aparência:

    (result: ExtensionInfo)=>void

Retorna

  • Promise<ExtensionInfo>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

get()

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

Retorna informações sobre a extensão, o app ou o tema instalado que tem o ID fornecido.

Parâmetros

Retorna

  • Promise<ExtensionInfo>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

getAll()

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

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

Parâmetros

Retorna

  • Promise<ExtensionInfo[]>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

getPermissionWarningsById()

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

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

Parâmetros

  • id

    string

    O ID de uma extensão já instalada.

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    (permissionWarnings: string[])=>void

    • permissionWarnings

      string[]

Retorna

  • Promessa<string[]>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

getPermissionWarningsByManifest()

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

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

Parâmetros

  • manifestStr

    string

    String JSON do manifesto de extensão.

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    (permissionWarnings: string[])=>void

    • permissionWarnings

      string[]

Retorna

  • Promessa<string[]>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

getSelf()

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

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 de gerenciamento no manifesto.

Parâmetros

Retorna

  • Promise<ExtensionInfo>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

installReplacementWebApp()

Promessa Chrome 77+
chrome.management.installReplacementWebApp(
  callback?: function,
)

Inicia o substituto_web_app especificado no manifesto. Solicita que o usuário faça a instalação, caso ainda não tenha feito isso.

Parâmetros

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    ()=>void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

launchApp()

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

Inicia um aplicativo.

Parâmetros

  • id

    string

    O código de extensão do aplicativo.

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    ()=>void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

setEnabled()

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

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 gerenciador "onclick" para um botão) e pode apresentar ao usuário uma interface de confirmação nativa como uma forma de evitar abusos.

Parâmetros

  • id

    string

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

  • ativado

    boolean

    Se este item deve ser ativado ou desativado.

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    ()=>void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

setLaunchType()

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

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

Parâmetros

  • id

    string

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

  • launchType

    O tipo de inicialização desejado. Sempre verifique se esse tipo de inicialização está em ExtensionInfo.availableLaunchTypes, já que os tipos disponíveis variam de acordo com a plataforma e a configuração.

  • callback

    função optional

    O parâmetro callback tem esta aparência:

    ()=>void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

uninstall()

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

Desinstala um aplicativo ou extensão atualmente instalado. 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 vai ser recusada ou o callback será chamado com runtime.lastError definido.

Parâmetros

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

uninstallSelf()

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

Desinstala a extensão de chamada. Observação: essa função pode ser usada sem solicitar a permissão de gerenciamento 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 optional

    O parâmetro callback tem esta aparência:

    ()=>void

Retorna

  • Promise<void>

    Chrome 88 ou mais recente

    Promessas são compatíveis com o Manifest V3 e versões mais recentes, mas callbacks são fornecidos para compatibilidade com versões anteriores. Não é possível usar os dois na mesma chamada de função. A promessa é resolvida com o mesmo tipo que é passado para o callback.

Eventos

onDisabled

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

Disparado quando um app ou extensão é desativado.

Parâmetros

onEnabled

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

Disparado quando um app ou extensão é ativado.

Parâmetros

onInstalled

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

Disparado quando um app ou extensão é instalado.

Parâmetros

onUninstalled

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

Disparado quando um aplicativo ou extensão é desinstalado.

Parâmetros

  • callback

    função

    O parâmetro callback tem esta aparência:

    (id: string)=>void

    • id

      string