Substituir as configurações do Chrome

As substituições de configurações são uma forma de as extensões modificarem as configurações selecionadas do Chrome. A API está disponível no Windows e Mac em todas as versões atuais do Chrome.

Página inicial, provedor de pesquisa e páginas de inicialização

Veja um exemplo de como a página inicial, o provedor de pesquisa e as páginas de inicialização podem ser modificadas no manifesto da extensão. Todos os domínios usados na API Settings precisam ser verificados (pelo Google Search Console) pela mesma conta de desenvolvedor que publica a extensão. Se você verificar a propriedade de um domínio (por exemplo, https://example.com), poderá usar qualquer subdomínio ou página (por exemplo, https://app.example.com ou https://example.com/page.html) na sua extensão.

O uso das permissões de substituição de configurações e a solicitação de recursos ou permissões adicionais não está de acordo com nossa política de finalidade única. Quando o Chrome detecta que um item pode estar violando nossa política de propósito único, uma caixa de diálogo de confirmação é mostrada ao usuário. As extensões que se limitam a apenas modificar uma única configuração sem buscar recursos ou permissões adicionais não recebem uma caixa de diálogo de confirmação.

Isso se aplica ao Chrome 107 e versões mais recentes.

{
  "name": "My extension",
  ...
  "chrome_settings_overrides": {
    "homepage": "https://www.homepage.com",
    "search_provider": {
        "name": "name.__MSG_url_domain__",
        "keyword": "keyword.__MSG_url_domain__",
        "search_url": "https://www.foo.__MSG_url_domain__/s?q={searchTerms}",
        "favicon_url": "https://www.foo.__MSG_url_domain__/favicon.ico",
        "suggest_url": "https://www.foo.__MSG_url_domain__/suggest?q={searchTerms}",
        "instant_url": "https://www.foo.__MSG_url_domain__/instant?q={searchTerms}",
        "image_url": "https://www.foo.__MSG_url_domain__/image?q={searchTerms}",
        "search_url_post_params": "search_lang=__MSG_url_domain__",
        "suggest_url_post_params": "suggest_lang=__MSG_url_domain__",
        "instant_url_post_params": "instant_lang=__MSG_url_domain__",
        "image_url_post_params": "image_lang=__MSG_url_domain__",
        "alternate_urls": [
          "https://www.moo.__MSG_url_domain__/s?q={searchTerms}",
          "https://www.noo.__MSG_url_domain__/s?q={searchTerms}"
        ],
        "encoding": "UTF-8",
        "is_default": true
    },
    "startup_pages": ["https://www.startup.com"]
   },
   "default_locale": "de",
   ...
}

Como personalizar valores

Os valores no manifesto podem ser personalizados das seguintes maneiras:

  • Todos os valores das propriedades search_provider, homepage e startup_pages podem ser localizados usando a API chrome.i18n.
  • Para extensões externas, os valores de URL search_provider, homepage e startup_pages podem ser parametrizados usando uma chave de registro. Crie uma nova entrada de registro ao lado da chave "update_url". Consulte as instruções. O nome da chave é "install_parameter", o valor é uma string arbitrária:

    {
      "update_url": "https://clients2.google.com/service/update2/crx",
      "install_parameter": "Value"
    }
    

    Todas as ocorrências da substring "__PARAM__" nos URLs do manifesto serão substituídas pelo valor "install_parameter". Se "install_parameter" estiver ausente, as ocorrências de "__PARAM__" serão removidas. Observe que "__PARAM__" não pode fazer parte do nome do host. Ele precisa ocorrer depois do primeiro "/" no URL.

Referência

Uma extensão pode substituir uma ou mais das seguintes propriedades no manifesto:

alternate_urls (matriz de strings, opcional)
Uma lista de padrões de URL que podem ser usados além de search_url.
encoding (string, opcional)
A codificação usada para os termos de pesquisa. Isso será necessário se você não definir prepopulated_id.
favicon_url (string, opcional)
Um URL do ícone do mecanismo de pesquisa. Isso será necessário se você não definir prepopulated_id.
homepage (string, opcional)
O novo valor para a página inicial.
image_url (string, opcional)
O URL que o mecanismo usa para a pesquisa de imagens. Se esse recurso não for usado, o mecanismo não vai oferecer suporte à pesquisa por imagens.
image_url_post_params (string, opcional)
Os parâmetros de postagem para image_url.
is_default (booleano, obrigatório)
Especifica se o provedor de pesquisa será padrão.
keyword (string, opcional)
Uma palavra-chave da omnibox para o mecanismo de pesquisa. Isso será necessário se você não definir prepopulated_id.
name (string, opcional)
Nome do mecanismo de pesquisa exibido ao usuário. Isso será necessário se você não definir prepopulated_id.
prepopulated_id (número inteiro, opcional)
Um ID para o mecanismo de pesquisa integrado do Chrome.
search_provider (objeto, opcional)
Um mecanismo de pesquisa.
search_url (string, obrigatório)
O URL de pesquisa usado pelo mecanismo de pesquisa.
search_url_post_params (string, opcional)
Os parâmetros de postagem para search_url.
startup_pages (matriz de strings, opcional)
Uma matriz de comprimento um contendo um URL a ser usado como a página de inicialização.
suggest_url (string, opcional)
O URL que o mecanismo de pesquisa usa para sugestões. Se esse elemento não for usado, o mecanismo não vai oferecer suporte a sugestões.
suggest_url_post_params (string, opcional)
Os parâmetros de postagem para suggest_url.