Mudanças nas permissões de contatos do Android: guia para MANAGE_CONTACTS
O Google vai restringir a escrita de contatos para apps que miram a próxima versão do Android. Entenda intents, Contact Picker, People Directory e MANAGE_CONTACTS.

Resumo do Artigo
This article covers Mudanças nas permissões de contatos do Android: guia para MANAGE_CONTACTS. O Google vai restringir a escrita de contatos para apps que miram a próxima versão do Android. Entenda intents, Contact Picker, People Directory e MANAGE_CONTACTS.
Pontos-Chave
- Published: October 31, 2026
- Category: Android Development
- Tags: Android permissions, contacts, Android development, Google Play policy, privacy
- Views: 109
- Reading time: ~17 min read
"O Google vai restringir a escrita de contatos para apps que miram a próxima versão do Android. Entenda intents, Contact Picker, People Directory e MANAGE_CONTACTS."

O acesso a contatos no Android está mudando, com impacto no desenvolvimento de aplicativos, nas revisões de políticas do Google Play e nas escolhas de privacidade apresentadas aos usuários. Em 21 de outubro de 2026, o Google anunciou que apps que tiverem como alvo a próxima versão do Android não poderão mais usar WRITE_CONTACTS para escrever diretamente nos contatos por padrão. Para a maioria dos aplicativos, o caminho recomendado passa a ser usar intents de contato padronizados ou superfícies do sistema com escopo menor.
Isso não é uma proibição de todos os recursos de contatos e não significa que os aplicativos atuais deixarão de funcionar de um dia para o outro. A mudança principal é sair de um acesso amplo, capaz de alterar a agenda em segundo plano, para ações iniciadas e confirmadas pelo usuário: inserir um contato, editar um contato, escolher uma pessoa ou publicar recursos de chamada e mensagem em um diretório do sistema. Migrar cedo reduz prompts desnecessários e evita uma correção apressada quando o app passar a mirar a nova versão.
Resumo rápido: a maioria dos apps não deve escrever contatos diretamente
Se o usuário pediu para salvar um cartão de visita, adicionar um telefone ou editar um contato, use intents como ACTION_INSERT, ACTION_EDIT ou ACTION_INSERT_OR_EDIT. Esses fluxos abrem o editor padrão e não exigem uma permissão ampla de escrita em aparelhos que executam a próxima versão do Android.
Use o Contact Picker quando o usuário só precisa escolher uma pessoa. Use People Directory quando um app de chamadas ou mensagens quiser oferecer ações como “Ligar com…” ou “Enviar mensagem com…” sem inserir linhas artificiais na agenda. Reserve MANAGE_CONTACTS para produtos cujo objetivo central realmente exige gestão direta e ampla, como gerenciadores de contatos, substitutos do discador e ferramentas de backup. Consulte o anúncio oficial do Android Developers e a referência de intents comuns.
Por que o Google está substituindo a escrita ampla
O modelo antigo trata quase da mesma forma uma solicitação única do usuário e a manutenção contínua de toda a agenda. Um app que só salva um contato pode pedir WRITE_CONTACTS, mas essa permissão também pode permitir alterações em massa em segundo plano. O usuário não consegue distinguir facilmente um caso limitado de um acesso muito mais poderoso.
O novo desenho parte da ação imediata do usuário. Ao abrir o editor do sistema, o app mostra os dados que serão salvos, a conta de destino e a ação final. O sistema mantém a confirmação nas mãos do usuário sem entregar capacidade ilimitada de escrita. É a mesma lógica de outras superfícies de privacidade do Android: peça a capacidade mínima que conclui a tarefa e preserve o controle da última etapa.
O Google também está corrigindo problemas de consistência. No passado, intents de contatos se comportavam de forma diferente entre aparelhos: alguns editores descartavam fotos, outros escondiam a opção de criar contato e alguns tratavam o botão voltar de maneira inesperada. A próxima versão padroniza os fluxos de inserção e edição para que a integração seja mais previsível.
Caminhos de migração para desenvolvedores
Salve ou edite um contato com um intent
Scanners de cartões, apps de conversa, ferramentas de pedidos e eventos normalmente não precisam de acesso amplo. Use ACTION_INSERT para criar, ACTION_INSERT_OR_EDIT quando o usuário pode adicionar telefone ou e-mail a um contato existente e ACTION_EDIT quando já houver um URI específico.
Teste a jornada completa: escolha da conta, fotos, telefones, e-mails, cancelamento, rotação e resultado após salvar. Tipos MIME personalizados fora de ContactsContract.CommonDataKinds podem ser ignorados pelo editor. Tenha uma alternativa clara para campos que não possam ser transferidos.
Use o Contact Picker para a escolha feita pelo usuário
Se o app precisa apenas de uma pessoa escolhida pelo usuário, ler toda a agenda é excesso. Disponível desde o Android 17, o Contact Picker permite selecionar um contato sem uma permissão ampla. Convites, pagamentos, compartilhamento de viagens e recursos de carona geralmente precisam de uma pessoa escolhida, não de um banco de dados completo.
Além do benefício de privacidade, o fluxo melhora a experiência. O seletor explica o motivo do acesso no momento em que o usuário escolhe alguém, em vez de mostrar uma permissão ampla antes de o recurso fazer sentido.
Use People Directory para recursos de chamada e mensagem
Apps de chamada e mensagem às vezes escrevem linhas extras nos contatos para exibir ações como “Ligar com…” ou “Mensagem com…”. O Google está introduzindo People Directory no Android QPR2, previsto para o quarto trimestre de 2026. O app poderá publicar como as pessoas podem ser alcançadas dentro dele sem alterar a agenda pessoal.
A separação é mais clara: a agenda continua sendo a fonte dos contatos pessoais e o diretório descreve recursos do aplicativo. Acompanhe a disponibilidade do QPR2 e teste em aparelhos compatíveis antes de remover compatibilidades antigas.
Quando MANAGE_CONTACTS é justificável
MANAGE_CONTACTS é um acesso especial, não uma caixa de diálogo de permissão em tempo de execução. O usuário o ativa em Configurações > Acesso especial a apps > Gerenciar contatos. Para apps qualificados, ele inclui leitura, então talvez não seja necessário pedir READ_CONTACTS também.
O acesso é destinado a produtos cujo núcleo é gerenciar contatos: gerenciadores dedicados, substitutos do discador, identificadores de chamadas que atualizam muitos registros, sincronização corporativa, backup e restauração em massa e transferência entre aparelhos. Ter uma tela de edição com marca própria não é justificativa suficiente.
Checklist de migração
- Procure
WRITE_CONTACTS, escritas diretas comContentResolver, linhas personalizadas e declarações no Play. - Classifique cada recurso como inserção, edição, seleção, alcance dentro do app ou gestão ampla.
- Troque ações de um contato por
ACTION_INSERT,ACTION_EDITouACTION_INSERT_OR_EDIT. - Use Contact Picker quando a funcionalidade permitir.
- Avalie People Directory para chamadas e mensagens dentro do app.
- Mantenha
MANAGE_CONTACTSsomente quando a função central exigir acesso amplo e documente o motivo. - Teste a versão nova e versões antigas, incluindo cancelamento e dados incompletos.
- Alinhe Manifest, declaração do Play, política de privacidade e explicação no app.
Usuários também podem usar uma regra simples: prefira aplicativos que expliquem permissões e ofereçam ações iniciadas pelo usuário. Para comparar ferramentas Android, fontes oficiais, permissões e notas de privacidade, veja o diretório de software Android da BTTC.
Perguntas frequentes
Isso afeta todos os apps Android imediatamente?
Não. A restrição vale para apps que miram a próxima versão do Android. Apps com alvo antigo mantêm o comportamento atual.
Um app pode excluir contatos com um intent?
Não. Não há intent padrão para exclusão. O usuário exclui contatos no aplicativo de contatos; apps com acesso MANAGE_CONTACTS justificado podem fazer isso diretamente.
MANAGE_CONTACTS substitui READ_CONTACTS?
Ele inclui leitura para apps qualificados, mas apps que apenas leem e não modificam contatos ainda podem justificar READ_CONTACTS.
Um app pode manter seu editor personalizado?
Somente se o produto realmente se qualificar para gestão ampla. Manter uma interface própria, por si só, não justifica MANAGE_CONTACTS.
Conclusão
O Android está tornando o acesso a contatos mais explícito e mediado pelo usuário. Para a maioria dos apps, a migração é objetiva: intents para salvar e editar, Contact Picker para escolher e People Directory para recursos de chamada e mensagem. Reserve MANAGE_CONTACTS para produtos que realmente administram agendas em escala e teste a mudança de target SDK antes do lançamento.

