Como funciona
A verificação do instalador é adicionada ao código do app para evitar a redistribuição. Se essa verificação resultar em um erro, os usuários terão que fazer o download do app no Google Play. Isso foi criado para:
- Prevenir a pirataria de apps pagos: é feita uma solicitação aos usuários que baixaram a versão protegida do app em uma fonte não oficial para que comprem o app no Google Play.
- Aumentar o número de usuários que recebem atualizações oficiais: é solicitado aos usuários que instalaram a versão não modificada por sideload que adquiram a versão oficial do app. Assim, eles sempre vão receber as atualizações.
Configurar a verificação do instalador
As etapas abaixo descrevem o que é necessário fazer para começar a usar o recurso. Clique em uma seção para abri-la.
A verificação do instalador adiciona uma verificação de licença do Google Play ao código do app para conferir se a conta do usuário que está acessando o app foi instalada (licenciada) de fontes autorizadas. Caso contrário, o usuário vai receber uma solicitação para instalar o app por uma página de detalhes do app personalizada.
Se você ativar a proteção automática para determinado app, o Google Play vai adicioná-la a cada versão pronta criada para distribuição aos dispositivos. A proteção exige que o Google Play crie APKs modificados com assinaturas em seu nome. Por isso, é necessário fazer o seguinte:
- Use a Assinatura de apps do Google Play.
- Publique com Android App Bundles.
- Segmente o nível 23 ou mais recente da API.
Observações importantes:
- A proteção automática só é compatível com o Android 6.0 Marshmallow (nível 23 da API) e versões mais recentes. O Android M foi lançado em 2015. Desde 2023, segmentar um midSDK 23 ou versões mais recentes abrange mais de 97% dos dispositivos Android ativos.
- A proteção automática é compatível com as seguintes ABIs: x86, x86_64, armeabi-v7a e arm64-v8a. Para atualizar as ABIs de destino do app, ajuste as configurações do Gradle. Outras ABIs que não são usadas por dispositivos Android ativos podem ser removidas da segmentação sem afetar a disponibilidade do app.
- A proteção automática funciona off-line. No entanto, a opção "Exigir instalação do Google Play" requer uma conexão de dados se o app Play Store no dispositivo está off-line há muito tempo.
- Se o app já estiver usando o licenciamento do Google Play, desative a opção "Exigir instalação do Google Play".
- Ao fazer upload do app no compartilhamento interno de apps, a proteção não será aplicada. Tome cuidado para enviar links de compartilhamento interno apenas para membros confiáveis da equipe e não disponibilize versões desprotegidas externamente.
- Como a proteção automática envolve a modificação do código, ela não é compatível com a transparência do código para pacotes de app. Não vamos aceitar pacotes de app enviados com transparência do código quando a proteção estiver ativada.
- As experiências instantâneas não são protegidas. Para ter proteção, o pacote de app nas faixas de lançamento não pode ser instantâneo. Você pode fazer upload de um pacote de app com proteção para a faixa de lançamento e de um pacote sem proteção para a faixa exclusiva a apps instantâneos ao mesmo tempo.
Crie uma versão conforme descrito na Etapa 1 de "Preparar e lançar uma versão".
Você pode ativar a proteção ao criar uma versão, como descrito na Etapa 2 de Preparar e lançar uma versão. Outra opção é fazer isso na página Integridade do app (Testar e lançar > Integridade do app), que tem serviços de integridade e assinatura para garantir que a experiência dos usuários saia como planejado.
Quando você prepara a versão, aparece um botão que diz Use a proteção da integridade ou Gerenciar a proteção da integridade. Clique em Sim, ativar em "Proteção automática". Depois, o Google Play vai assinar suas versões e adicionar a proteção da integridade para restringir adulterações e abusos referentes à distribuição. Isso significa que a proteção automática está ativada.
Termine de preparar a versão e salve as mudanças.
Use cada uma das faixas de teste para testar a versão protegida do app e garantir que não haja efeitos inesperados no desempenho nem na experiência do usuário.
Recomendamos que você inclua as seguintes ações nessa análise:
- Teste a execução inicial do jogo, procure por falhas e lentidão na inicialização.
- Teste as instâncias em que o código nativo (C/C++) chama o Java (no próprio código ou em bibliotecas de terceiros), como em anúncios, casos de geração de registros, integração social e autenticação ou recursos específicos do Android, como gerenciamento de permissões.
Se houver problemas durante o processo de teste, você poderá desativar a proteção automática ou reverter para uma versão anterior dela que você já usou em um lançamento passado. Recomendamos que você não promova versões desprotegidas para faixas abertas ou de produção.
Para desativar a proteção de integridade em uma única versão, faça o seguinte:
- Ao preparar a versão, clique em Gerenciar a proteção da integridade.
- Em "Proteção automática", selecione Proteção anterior ou Desativar proteção para esta versão.
- Salve as mudanças. As mudanças vão ser aplicadas a esta versão. Na próxima vez que você fizer upload de uma versão, ela vai receber a versão mais recente e mais segura novamente.
Quando tudo estiver pronto, lance a versão em uma faixa de produção no Play Console. Assim, o app protegido será disponibilizado a todos os usuários do Google Play nos países selecionados.
Personalizar a página de detalhes do app quando os usuários falharem na verificação do instalador
A verificação do instalador, um recurso da proteção automática, pede aos usuários que baixaram seu app de uma forma não oficial que o instalem pelo Google Play. Após tocarem na caixa de diálogo, ela vai redirecionar para a página de detalhes do app, onde será possível tocar em Instalar (ou Comprar / Atualizar) para instalar o app pelo Google Play.
Você pode personalizar os recursos da página de detalhes do app para todos os visitantes que tocarem nas caixas de diálogo de proteção da integridade, incluindo o nome, ícone, descrições e recursos gráficos do app. Para fazer a personalização:
- Abra o Play Console e acesse a página Integridade do app (Testar e lançar > Integridade do app).
- Role a tela até a seção "API Play Integrity".
- Clique em Configurações.
- Role a tela até a seção "Personalizar página 'Detalhes do app'".
- Clique em Criar Detalhes do app.
- Siga as instruções na página Criar página "Detalhes do app" personalizada e clique em Salvar.
Também é possível criar essas páginas diretamente em Páginas de detalhes do app personalizadas:
- Abra o Play Console e acesse Páginas de detalhes do app personalizadas (Aumente o número de usuários > Páginas de detalhes do app personalizadas).
- Clique em Criar Detalhes do app, escolha se quer criar ou duplicar uma página de detalhes e clique em Próxima.
- Na seção "Informações da página 'Detalhes do app'", role a tela até Público-alvo.
- Selecione Por URL e digite "playintegrity" na caixa de texto.
- Preencha todos os outros detalhes e clique em Salvar.
Dica: o parâmetro de URL "playintegrity" é uma palavra-chave especial reservada para links diretos de integridade. Por isso, ele precisa ser inserido de forma exata e inalterada quando você configura a página de detalhes do app personalizada.
Práticas recomendadas
Não lançar versões não protegidas do app
Se você publicar versões não protegidas em faixas abertas ou em outros canais fora do Google Play, a proteção do app não funcionará. Para manter a proteção da integridade do app, publique somente versões protegidas em faixas abertas e de produção.
Cuidado ao combinar soluções de proteção contra adulterações
Talvez a proteção automática não seja compatível com outras soluções de proteção contra adulterações durante a execução. Nesse caso, tentar usar essas ferramentas juntas pode causar problemas para os usuários. Se você já implementa o licenciamento do Google Play no app, desative a opção "Exigir instalação do Google Play". Se o app realizar outras verificações no momento da execução, faça testes cuidadosos antes do lançamento nas faixas abertas para conferir se há problemas.
Testar seu app protegido
O Google Play vai enviar automaticamente versões protegidas a todas as faixas: fechadas, abertas, de produção e de teste interno. Faça testes completos nessas versões como de costume.
Se você fizer upload da versão do app diretamente para o Compartilhamento interno, o Google Play não adicionará proteções. Isso permite que o compartilhamento interno de apps seja usado para fazer upload de builds de depuração e outras versões semelhantes.
Ao acessar o link de uma versão protegida no compartilhamento interno de apps pelo pesquisador de pacotes de apps, a versão é compartilhada exatamente como foi processada pelo Google Play. Se essa versão do app tiver sido enviada a uma faixa de teste e for protegida, o link do compartilhamento interno no pesquisador de pacotes de apps vai enviar uma versão protegida. Confira o status da proteção na guia Detalhes do pesquisador de pacotes de apps.
Monitorar falhas
Talvez você note um aumento nas falhas devido ao app estar protegido. Isso provavelmente indica que a proteção automática funciona conforme o esperado. Se um invasor tentar modificar o app e não conseguir, a verificação durante a execução vai interromper o funcionamento do app, normalmente por uma falha.
As falhas não atribuídas ao Google Play não afetam as métricas de estabilidade do Android vitals. Se você usa outras ferramentas para analisar falhas, como o Crashlytics, e precisa de um nome de pacote para filtrar por origem da instalação, o nome do pacote da Google Play Store é "com.android.vending".
Se um aumento adverso no número de falhas parecer preocupante, informe nossa equipe e dê o máximo de detalhes possível para que possamos investigar. Vamos responder se determinarmos que as falhas estão relacionadas à proteção.
Denunciar versões crackeadas do app
Uma versão crackeada do app é uma versão que funciona mesmo após ter sido modificada ou instalada fora do Google Play se você tornou a instalação pelo Google Play obrigatória.
Se você tiver identificado uma versão crackeada do app, entre em contato.
Conteúdo relacionado
- Assista este vídeo sobre a proteção automática.
- Saiba mais sobre os serviços de assinatura e integridade no Play Console.
- Saiba mais sobre os serviços de integridade e assinatura no site para desenvolvedores Android.