Em julho, lançamos uma nova série de blogs para manter você informado sobre os desenvolvimentos das extensões. Graças ao seu feedback e à nossa colaboração contínua com outros fornecedores de navegadores no grupo da comunidade do WebExtensions, continuamos aprimorando as APIs de extensão e trabalhando para melhorar a consistência entre os navegadores.
Esta é a edição de outubro. Neste post, vamos analisar algumas das mudanças que a equipe de extensões do Chrome fez nos últimos meses, além de alguns novos recursos que serão lançados ainda este ano. Vamos começar!
Novas APIs e recursos de extensão
Nesta seção, compartilhamos alguns lançamentos de APIs importantes, analisamos brevemente outras melhorias de API e compartilhamos as próximas versões. No momento, todos os lançamentos estão disponíveis na versão Beta mais recente. Consulte a programação de lançamentos do Chromium para mais detalhes.
Destaques
Problemas conhecidos resolvidos
A equipe de extensões está trabalhando ativamente para resolver os problemas de estabilidade do Manifest V3. O Chrome 116 lançou muitas melhorias que nos ajudaram a fazer progressos significativos para fechar a lacuna de recursos entre o Manifest V2 e o V3. No Chrome 120, vamos concluir o tratamento de todas as nossas lacunas prioritárias da plataforma e fechar todos os bugs críticos documentados na página de problemas conhecidos. No momento, todos os recursos estão disponíveis no Chrome 120 Canary, exceto o suporte a fileHandler para ChromeOS Lacros e a API userScripts, que será lançada no final deste mês. Confira a página de problemas conhecidos atualizada para mais detalhes.
Melhoria na estabilidade do Service Worker
Os problemas de estabilidade relacionados ao service worker foram resolvidos. No Chrome 116, adicionamos keep-alives fortes às APIs de extensão que mostram uma solicitação do usuário e melhoramos o suporte a WebSockets. Confira o tutorial Usar WebSockets em extensões. A partir do Chrome 118, um worker de serviço vai permanecer ativo durante uma sessão ativa da API Debugger.
Confira nossas orientações atualizadas sobre o Service Worker para mais detalhes. Se os usuários ainda encontrarem problemas de estabilidade relacionados a workers de serviço nas versões do Chrome após a 119, entre em contato conosco.
Mais segurança
Antes, a navegação para alguns URLs chrome://
usando tabs.update()
, tabs.create
e windows.create()
emitia um erro ou travava o Chrome. Além disso, o tabs.update()
não conseguiu abrir um URL do JavaScript. No Chrome 117, ampliamos o número de URLs chrome://
com suporte, e o bloqueio de URL do Javascript agora também se aplica a todos os métodos da API de extensão.
No Chrome 117, os usuários vão receber notificações proativas na página "Extensões do Chrome" se uma extensão instalada não estiver mais disponível na Chrome Web Store. Isso pode acontecer se o desenvolvedor despublicar a extensão, se ela for removida por violações de políticas ou se for identificada como malware. Para saber mais, consulte Como a Verificação de segurança foi adicionada à página chrome://extensions.
No Chrome 118, as extensões não poderão navegar para URLs file://
usando as APIs chrome.tabs
e chrome.windows
, a menos que a opção "Permitir acesso a URLs de arquivo" esteja ativada na página de detalhes da extensão. Consulte a discussão sobre o WECG.
Mais lançamentos de APIs
- API Runtime:a partir do Chrome 116, é possível usar
runtime.getContexts()
para recuperar informações sobre contextos ativos. Por exemplo, é possível verificar se há um documento fora da tela ativo. - API Side Panel No Chrome 116, é possível usar
sidepanel.open()
para abrir o painel lateral da extensão de forma programática em resposta a um gesto do usuário, como um clique no menu de contexto. - API TabCapture: foi adicionada a capacidade de chamar
getMediaStreamId()
do service worker da extensão e receber um objetoMediaStream
de um ID de stream em um documento fora da tela no Chrome 116. Consulte Gravação de áudio e captura de tela para conferir exemplos. - API DeclarativeNetRequest:o valor padrão da propriedade
isUrlFilterCaseSensitive
foi alterado parafalse
no Chrome 118.
Em breve...
Planejamos resolver todos os itens restantes na página de problemas conhecidos com o lançamento do Chrome 120. Além disso, planejamos adicionar os seguintes recursos:
- A API UserScripts permite que os administradores de scripts do usuário coordenem como e quando injetar uma coleção de scripts do usuário em páginas da Web. Consulte a proposta da WECG para mais detalhes.
- Com a API ReadingList, os desenvolvedores podem criar, ler, atualizar e excluir metadados localizados no painel "Lista de leitura" do painel lateral. Assista o anúncio em Novidades nas extensões do Chrome.
- Após o feedback no grupo da comunidade das extensões da Web, aumentamos significativamente o limite de conjuntos de regras estáticas ativados, de 10 para 50. Além disso, aumentamos o número total de conjuntos de regras estáticas permitidos de 50 para 100. Esse recurso está disponível na versão Canary.
- A API File Handling vai estar disponível para extensões do ChromeOS a partir do ChromeOS 120, que permite que as extensões abram arquivos com tipos MIME e extensões de arquivo especificados de maneira semelhante ao processamento de arquivos da plataforma da Web.
- As extensões poderão usar a API Push da Web por meio de
self.registration.pushManager.subscribe()
sem mostrar uma notificação visível ao usuário, definindouserVisibleOnly
comofalse
. Isso vai tornar as notificações push uma alternativa mais simples aos WebSockets em service workers (MV3) para comunicação assíncrona entre cliente e servidor. Consulte o bug do Chromium e a discussão do WECG para mais detalhes.
Fique de olho na página Novidades nas extensões para conferir os anúncios assim que esses recursos estiverem disponíveis no Chrome Beta.
Atualizações da documentação
Também melhoramos e adicionamos à nossa documentação. Continue a fazer perguntas no chromium-group e relatar problemas de documentação.
Destaques
- Reformulamos a página de destino de amostras. Agora é possível filtrar por API, permissão e tipo, facilitando a localização de amostras específicas. Essa melhoria foi um esforço colaborativo com o estagiário do Summer of Code, Xuezhou Dai. Leia sobre a experiência dele nesta postagem do blog.
- Como usar sua conta do Google Analytics com a Chrome Web Store descreve como visualizar o Google Analytics 4 para sua listagem na Chrome Web Store, complementando os dados fornecidos pelo painel de controle do desenvolvedor. Este guia apresenta as etapas para ativar o Google Analytics, monitorar a performance dos anúncios, acompanhar conversões e conceder a outras contas acesso aos dados do Google Analytics.
- Publicamos um novo guia sobre como as APIs de cookies e armazenamento da Web funcionam nas extensões do Chrome. Ele inclui tudo o que você precisa saber sobre o Sandbox de privacidade como desenvolvedor de extensões.
- Lançamos novos artigos sobre como integrar testes aos seus projetos de extensão: Testes unitários de extensões do Chrome e Testes completos de extensões abordam orientações gerais e práticas recomendadas em várias estruturas conhecidas. Para conferir um tutorial prático, consulte Como testar extensões do Chrome com o Puppeteer.
Mais atualizações
- Reescritamos as orientações da API Declarative Net Request para mostrar de forma mais clara como implementar conjuntos de regras declarativas.
- Adicionamos mais orientações para migrar o código hospedado remotamente para o Manifesto V3. Além disso, para minimizar o risco de encontrar problemas durante o lançamento, oferecemos estratégias para publicar sua extensão do Manifest V3 em etapas.
- Saiba como se conectar a um WebSocket no service worker da sua extensão.
- Ampliamos nosso Guia de ajuda para incluir instruções mais detalhadas sobre como registrar um bug, acompanhar problemas existentes, solicitar novos recursos e muito mais.
Em breve...
- Referência e tutorial da API User Scripts.
- Tutorial e exemplos do Firebase.
- Referência da API ReadingList.
Redesign da Chrome Web Store 🌈
No início deste mês, anunciamos uma prévia da Chrome Web Store reformulada, como sugerimos no Google I/O. Confira https://chromewebstore.google.com/. Confira algumas mudanças importantes:
- Aumentamos a lista de categorias de 11 para 17 em três grupos de categorias.
- Melhoramos o preenchimento automático na pesquisa.
- As capturas de tela agora são exibidas com uma qualidade muito maior. Se ainda não fez isso, faça upload de capturas de tela de 1280 x 800.
- As respostas às perguntas na guia "Suporte" agora mostram quebras de linha.
- Ao responder a avaliações de usuários e perguntas de suporte, sua resposta agora vai incluir um selo "Desenvolvedor" ao lado do seu nome.
- Para fornecer aos usuários um link direto para a página de avaliações, adicione "/reviews" ao final do URL do item da loja. Por exemplo:
https://chromewebstore.google.com/detail/_EXTENSION_ID_/reviews
.
Agradecemos as contribuições até agora no grupo chromium-google. Participe da discussão ou envie seu feedback diretamente para a equipe do CWS usando o item de menu Enviar feedback:
Além disso, você pode enviar um formulário de autoindicação para aparecer na coleção "Escolha dos editores". Fique de olho nas próximas melhorias no Painel de controle do desenvolvedor.
💡 Você sabia?
- Há um novo vídeo sobre como depurar extensões do Chrome. Ele aborda muitos tópicos que você já conhece, mas também compartilha alguns truques úteis para usar o DevTools em extensões.
- Agora, você precisa fornecer uma Política de Privacidade para cada extensão. Antes, só era possível adicionar uma Política de Privacidade por conta de desenvolvedor, mas isso era inconveniente se você tivesse várias extensões em uma conta. Essa nova interface está disponível na guia "Privacidade" do seu item no Painel de controle do desenvolvedor. Isso significa que as políticas de privacidade no nível da conta não são mais compatíveis.
Estamos entrando em contato 🙌
Continuamos a entrar em contato com a comunidade de desenvolvedores de extensões por meio de conversas individuais, lançamento de novos programas e participação em seminários. Confira alguns destaques:
- O programa Google Developer Experts para extensões foi lançado em agosto. Temos mais de uma dúzia de novos GDEs com foco em extensões do Chrome de todo o mundo que nos fornecem ótimos feedbacks. É um momento muito empolgante para o programa.
- Participamos da TPAC (conferência anual do W3C) como parte do Grupo da comunidade de extensões da Web e nos reunimos com representantes do Firefox e do Safari com vários membros da comunidade. Fizemos progressos significativos em vários tópicos, incluindo a criação de APIs de extensão mais consistentes, o trabalho em uma especificação e a criação de um novo conjunto de testes com base nos testes da plataforma da Web. Leia as atas completas no repositório da WECG (em inglês).
- Na semana passada, a equipe da extensão participou da Ad-Filtering Dev Summit em Amsterdã. Ela conheceu vários de vocês em uma conversa informal que organizou antes da semana do evento e no horário de atendimento aberto na sexta-feira.
Mesmo que você não tenha participado de nenhum desses eventos, ainda pode se envolver fazendo perguntas no grupo do Google chromium-extensions, seguindo as discussões dos parceiros do navegador no WECG e informando problemas de documentação.
Agradecemos novamente por fazer parte da comunidade de desenvolvedores de extensões.