Substituir as configurações do Chrome

As substituições de configurações são uma maneira de as extensões substituirem as configurações selecionadas do Chrome. A API é disponível para 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 de extensões. Qualquer domínio usado na API Settings precisa ser verificado (via Google Search Console) pela mesma conta de desenvolvedor que publicou a extensão. Se você confirmar a propriedade de um domínio (por exemplo, https://example.com), você pode 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 da permissão substitui as configurações e, ao mesmo tempo, solicita recursos ou permissões adicionais é inconsistente com nossa política de finalidade única. Quando o Chrome detecta que um item pode estar violando nossa política de objetivo único, uma caixa de diálogo de confirmação é mostrada ao usuário. As extensões que se limitam a modificar apenas uma 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 parametrizado usando uma chave de registro. Crie uma nova entrada de registro ao lado do Chave "update_url" (consulte as instruções aqui). 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 pelas Valor de "install_parameter". Se "install_parameter" estiver ausente, as ocorrências de "__PARAM__" serão removida. Observe que "__PARAM__" não pode fazer parte do nome do host. Ela precisa ocorrer depois que o 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 de ícone para o mecanismo de pesquisa. Isso será necessário se você não definir prepopulated_id.
homepage (string, opcional)
O novo valor da página inicial.
image_url (string, opcional)
O URL que o mecanismo de pesquisa usa para a pesquisa de imagens. Se isso 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 para o usuário. Isso será necessário se você não definir prepopulated_id.
prepopulated_id (número inteiro, opcional)
Um código 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 que contém um URL que será usado como página de inicialização.
suggest_url (string, opcional)
O URL que o mecanismo de pesquisa usa para sugestões. Se ela não for usada, o mecanismo não vai oferecer suporte às sugestões.
suggest_url_post_params (string, opcional)
Os parâmetros de postagem para suggest_url.