Vereditos aprimorados em dispositivos Android 13 e mais recentes

Recentemente, anunciamos que fortalecemos os vereditos da API Play Integrity para torná-los mais rápidos, mais resistentes a ataques e mais privados para os usuários, além de outras melhorias de segurança.

Resumo das mudanças

Confira um resumo detalhado das mudanças e perguntas frequentes mais adiante neste documento. As mudanças no veredito em maio de 2025 foram as seguintes:

O que O que mudou Impacto estimado* Quais dispositivos
Mudanças que afetam todos os desenvolvedores que fazem solicitações da API Play Integrity
Resposta do veredito do dispositivo: meets-device-integrity É necessário ter um veredito de inicialização verificada positivo com suporte de hardware. Impacto mínimo, porque a API Play Integrity já usa indicadores de segurança protegidos por hardware em dispositivos com o Android 13 ou versões mais recentes (~0,4%). Android 13 e versões mais recentes
Resposta de integridade do app: veredito de reconhecimento do app Sem alterações Impacto mínimo, isso vai refletir a mudança no veredito do dispositivo (~0,4%). Android 13 e versões mais recentes
Resposta aos detalhes da conta: veredito da licença do Google Play O app que faz a solicitação precisa ser instalado ou atualizado pelo Google Play Pequena diminuição nas respostas licenciadas (~2,5%) Android 6 e versões mais recentes
Mudanças que afetam apenas os desenvolvedores do Play Console e do Play SDK Console que usam recursos opcionais
Resposta do veredito do dispositivo: meets-basic-integrity É necessário ter o atestado de chave da plataforma Android, mas o estado de inicialização pode ser verificado ou não. Diminuição pequena nas respostas básicas (~0,4%) Android 13 e versões mais recentes
Resposta do veredito do dispositivo: meets-strong-integrity É necessário ter uma atualização de segurança no último ano Diminuição das respostas fortes (~14,5%) Android 13 e versões mais recentes
Todos os indicadores opcionais (exceto atributos do dispositivo)** O app que faz a solicitação precisa ser instalado ou atualizado pelo Google Play Diminuição na porcentagem de respostas que incluem indicadores opcionais (~7%) Android 13 e versões mais recentes

*Todas as porcentagens de impacto estimadas mencionadas anteriormente foram baseadas em médias, e diferentes apps podem ter visto mudanças menores ou maiores, dependendo da base instalada.

**Os indicadores opcionais (exceto os atributos do dispositivo) são: meets-basic-integrity, meets-strong-integrity, atividade recente do dispositivo, recall do dispositivo (Beta), status do Play Protect e risco de acesso a apps.

Perguntas frequentes

Visão geral

O que é a API Play Integrity?

A API Play Integrity ajuda a avaliar a confiabilidade do ambiente do app do usuário ao coletar informações sobre o dispositivo, o app e o usuário. Assim, é possível detectar e responder a possíveis abusos e ataques.

Quais indicadores a API Play Integrity oferece?

A API Play Integrity inclui a identidade do app solicitante, se ele foi instalado pelo Google Play e se o dispositivo é um dispositivo Android certificado pelo Play Protect. Esses sinais são fornecidos por padrão. É possível ler esses sinais no servidor de back-end do app e decidir se e como ele vai responder. Os desenvolvedores do Google Play podem ativar o recebimento de outros indicadores nas instalações do Google Play para acessar ainda mais informações.

O que é o atestado de chaves da plataforma Android?

A declaração de chaves da plataforma Android permite que os apps verifiquem o estado do dispositivo e recebam um sinal forte de integridade da inicialização protegida por hardware. Isso depende de uma chave provisionada pelo Google no keystore com suporte de hardware do dispositivo. A API Play Integrity já usa a declaração de chave para receber indicadores de segurança protegidos por hardware em alguns dispositivos e agora vai integrá-los de forma mais profunda em todos os dispositivos com o Android 13 ou versões mais recentes.

Mudanças de veredito

Quais mudanças foram feitas nos vereditos da API Play Integrity em dispositivos com Android 13 ou versões mais recentes?

Agora, a API Play Integrity exige indicadores de segurança protegidos por hardware para todos os vereditos de integridade:

  • O veredito de reconhecimento de dispositivo meets-device-integrity é uma indicação de que o dispositivo em que o app está sendo executado é um dispositivo Android genuíno certificado pelo Play Protect. Esse veredito exige que o carregador de inicialização do dispositivo seja bloqueado e que o SO Android carregado seja uma imagem certificada do fabricante do dispositivo.
  • O veredito de reconhecimento de dispositivo meets-strong-integrity é uma indicação de um dispositivo Android genuíno certificado pelo Play Protect com uma atualização de segurança recente. Esse veredito vai exigir meets-device-integrity e atualizações de segurança no último ano para todas as partições do dispositivo, incluindo um patch de partição do SO Android e um patch de partição do fornecedor. Essa condição pode mudar no futuro.
  • O veredito de reconhecimento de dispositivo meets-basic-integrity é uma indicação de que a verificação ocorreu em um dispositivo Android físico. O carregador de inicialização do dispositivo pode ser bloqueado ou desbloqueado, e o estado de inicialização pode ser verificado ou não verificado. Ele pode não ter a certificação do Play Protect. Nesse caso, o Google não pode oferecer garantias de segurança, privacidade ou compatibilidade de apps e não pode garantir que o dispositivo não está agindo como um proxy, como em uma instância virtual do Android. Isso também significa que os dispositivos com acesso root estão qualificados para retornar meets-basic-integrity, desde que o atestado de chave esteja presente.

Essas mudanças não afetam a API Play Integrity no Google Play Games no PC, que continuará retornando meets-virtual-integrity.

Por que os vereditos da API Play Integrity foram alterados em dispositivos com o Android 13 ou versões mais recentes?

A API Play Integrity usava parcialmente indicadores de segurança protegidos por hardware no Android 12 e versões anteriores. Ao exigir a segurança com suporte de hardware no Android 13 e versões mais recentes, os vereditos da API Play Integrity são mais resistentes a ataques, têm melhor desempenho para apps e mais privacidade para os usuários. Os desenvolvedores podem esperar as seguintes melhorias em dispositivos com o Android 13 ou versões mais recentes:

  • Redução de 90% nos sinais de dispositivo que precisam ser coletados e avaliados para gerar o veredito padrão nos servidores do Google. Os indicadores opcionais vão continuar exigindo a coleta de outros indicadores.
  • Melhoria na latência do veredito de até 80% para solicitações padrão no pior cenário e de até 80% para todas as solicitações clássicas para receber o veredito padrão. Os indicadores opcionais podem aumentar a latência.
  • Nível consistente de confiabilidade e suporte para todos os formatos do Android com atestados de chave, incluindo smartphones, tablets, dobráveis, TV, Wear OS e ChromeOS.
  • Uma maior diferenciação entre cada rótulo de dispositivo no veredito de reconhecimento do dispositivo: meets-strong-integrity, meets-device-integrity e meets-basic-integrity.

O veredito da API Play Integrity no Play Games para PC não vai mudar e será o mesmo no Android 12 e versões anteriores e no Android 13 e versões mais recentes.

Como posso atualizar a lógica de back-end do meu app para que os vereditos de integridade levem em conta a versão do SDK do Android?

Se você quiser usar uma lógica diferente no servidor de back-end do app com base na versão do SDK do Android, use o novo campo de atributos do dispositivo no veredito. Confira um exemplo:

Kotlin

val deviceIntegrity =
  JSONObject(payload).getJSONObject("deviceIntegrity")
val sdkVersion =
  if (deviceIntegrity.has("deviceAttributes")) {
    deviceIntegrity.getJSONObject("deviceAttributes").getInt("sdkVersion")
  } else {
    0
  }

if (sdkVersion >= 30) {
  // Provide Android R+ specific experience to the user.
}

Java

JSONObject deviceIntegrity =
  new JSONObject(payload).getJSONObject("deviceIntegrity");
int sdkVersion =
  deviceIntegrity.has("deviceAttributes")
    ? deviceIntegrity.getJSONArray("deviceAttributes").getInt("sdkVersion")
    : 0;

if (sdkVersion >= 30) {
  // Provide Android R+ specific experience to the user.
}

Como posso usar a definição antiga do rótulo meets-strong-integrity em todas as versões do SDK do Android?

Para isso, atualize a lógica de back-end do app para usar meets-strong-integrity quando ele for um dispositivo anterior ao Android 13 e meets-device-integrity quando ele for um dispositivo com o Android 13 ou mais recente usando o novo campo de atributos do dispositivo no veredito que contém a versão do SDK do Android. Confira um exemplo de como fazer isso:

Kotlin

val deviceRecognitionVerdict =
  if (deviceIntegrity.has("deviceRecognitionVerdict")) {
    deviceIntegrity.getJSONArray("deviceRecognitionVerdict").toString()
  } else {
    ""
  }

val deviceIntegrityToCheckFor =
  sdkVersion < 33 ? "MEETS_STRONG_INTEGRITY" : "MEETS_DEVICE_INTEGRITY";

if (deviceRecognitionVerdict.contains(deviceIntegrityToCheckFor)) {
  // Looks good!
}

Java

JSONObject deviceIntegrity =
  new JSONObject(payload).getJSONObject("deviceIntegrity");
String deviceRecognitionVerdict =
  deviceIntegrity.has("deviceRecognitionVerdict")
    ? deviceIntegrity.getJSONArray("deviceRecognitionVerdict").toString()
    : "";

String deviceIntegrityToCheckFor =
  sdkVersion < 33 ? "MEETS_STRONG_INTEGRITY" : "MEETS_DEVICE_INTEGRITY";

if (deviceRecognitionVerdict.contains(deviceIntegrityToCheckFor)) {
  // Looks good!
}

Como também é um sinal com suporte de hardware, o campo de atributos do dispositivo é mais confiável em dispositivos com o Android 13 e versões mais recentes.

Quais outras mudanças foram feitas no veredito?

Investimos continuamente para tornar os indicadores da API Play Integrity mais confiáveis e lançamos novos recursos periodicamente para ajudar os desenvolvedores a lidar com ameaças emergentes e novos casos de uso. Outras melhorias de veredito que fizemos incluem:

  • Resposta licenciada do Google Play:para retornar uma resposta licenciada do Google Play, a API Play Integrity agora sempre exige que o app solicitante seja instalado ou atualizado pelo Google Play. Isso corrige alguns casos extremos e facilita a interpretação da resposta para os desenvolvedores.
  • Disponibilidade de indicadores opcionais:todos os indicadores opcionais disponíveis para desenvolvedores que usam o Google Play Console ou o Play SDK Console (exceto atributos do dispositivo) agora exigem que o app solicitante seja instalado ou atualizado pelo Google Play no Android 13 ou versões mais recentes. Isso inclui meets-strong-integrity, meets-basic-integrity, atividade recente do dispositivo, recall do dispositivo (Beta), veredito de risco de acesso a apps e o veredito do Play Protect. Todas as outras solicitações da API Play Integrity foram padronizadas para receber a verificação do dispositivo (apenas com o rótulo meets-device-integrity), a verificação do instalador, a verificação de integridade do app e os atributos do dispositivo (se ativados).
  • Mudanças de veredito para dispositivos específicos:a API Play Integrity muda automaticamente os vereditos do dispositivo em mais cenários para proteger os apps mais cedo em todas as versões do SDK do Android, como quando há evidências de atividade excessiva ou comprometimento de chaves. Isso inclui a capacidade do Google Play de usar outros indicadores para gerar veredictos temporários de dispositivos para os usuários quando os indicadores protegidos por hardware não estão disponíveis. Recomendamos que os desenvolvedores usem as caixas de diálogo de correção do Google Play no app ou direcionem os usuários ao app da Play Store para corrigir problemas de veredito de integridade. Com o tempo, essas caixas de diálogo vão lidar com mais cenários e incluir orientações específicas para os usuários, informando o que eles precisam corrigir com base no dispositivo ou na conta específica.

Como faço para informar problemas com vereditos de integridade?

Para informar problemas com respostas da API Play Integrity, seja com os vereditos históricos ou os novos, siga as instruções na página de suporte.

Disponibilidade

O que a API Play Integrity precisa para funcionar?

A API Play Integrity exige que a Google Play Store e o Google Play Services estejam instalados em um dispositivo, incluindo dispositivos Android e o Google Play Games para PC. As solicitações clássicas exigem o Android 4.4 (nível 19 da API) ou versões mais recentes, e as solicitações padrão exigem o Android 5.0 (nível 21 da API) ou versões mais recentes. Em dispositivos com o Android 13 (nível 33 da API) e versões mais recentes, a API Play Integrity vai ter o mesmo nível de confiabilidade e suporte em todos os formatos do Android com atestado de chave, incluindo dispositivos móveis, tablets, dobráveis, TV, Auto, Wear OS e ChromeOS.

Por que a API Play Integrity tem vereditos diferentes para dispositivos diferentes?

A API Play Integrity oferece vários vereditos de dispositivo para acomodar desenvolvedores com diferentes casos de uso e tolerâncias de risco e para permitir uma estratégia de aplicação em camadas. Por exemplo, quando o app e o dispositivo são mais confiáveis, um desenvolvedor pode agilizar as etapas de verificação do usuário. Já quando um dispositivo é desconhecido, o desenvolvedor pode exigir uma verificação adicional do usuário antes de realizar ações protegidas ou sensíveis. Essa pode ser uma maneira eficaz de reduzir abusos e ataques.

O que é um dispositivo Android certificado pelo Play Protect?

Um dispositivo Android certificado pelo Play Protect (também conhecido como dispositivo Android GMS) é um dispositivo com software previsível que passou em centenas de testes de compatibilidade do Google, obedece ao modelo de segurança e permissões do Android e é enviado com o pacote de recursos antimalware do Google Play Protect. Quando a API Play Integrity consegue verificar se um dispositivo é um dispositivo Android certificado pelo Play Protect, ela retorna a resposta meets-device-integrity no veredito de reconhecimento do dispositivo.

O que é um dispositivo meets-basic-integrity?

A API Play Integrity também retorna uma resposta opcional no veredito do dispositivo, meets-basic-integrity. Se um dispositivo retornar apenas o veredito meets-basic-integrity sem meets-device-integrity ou meets-strong-integrity, significa que o SO Android não pode ser verificado, mas o atestado de chave está presente. Isso indica que a verificação ocorreu em um dispositivo físico com Android, mas o Google não pode garantir a segurança, a privacidade ou a compatibilidade do dispositivo e não pode garantir que ele não esteja agindo como um proxy, como em uma instância virtual do Android. Dependendo dos casos de uso e da tolerância a riscos dos desenvolvedores, eles podem decidir como querem que o app seja executado nesses dispositivos.

Qualquer desenvolvedor pode usar a API Play Integrity?

Sim, qualquer desenvolvedor Android pode fazer solicitações da API Play Integrity para receber os vereditos de integridade padrão. O uso é limitado a 10 mil solicitações por dia, independente do canal de distribuição. Os desenvolvedores que publicam apps no Google Play, além de outros canais de distribuição, também podem solicitar o aumento da cota diária.

Qualquer desenvolvedor pode usar a Autenticação de chave da plataforma Android?

Sim, qualquer desenvolvedor Android pode usar o atestado de chave do Android Platform para receber um registro de atestado de chave, que pode ser verificado com o certificado público da chave raiz de atestado do Google. A API Play Integrity oferece aos desenvolvedores os benefícios do atestado de chave e outros recursos sem toda a complexidade de ter que fazer a integração com o atestado de chave.

Aplicação

Como os desenvolvedores usam os vereditos da API Play Integrity?

Os desenvolvedores decidem se e como usar os vereditos da API Play Integrity. Alguns desenvolvedores coletam os indicadores para análise interna de combate a abusos, enquanto outros tomam decisões sobre o comportamento do app com base no veredito. Por exemplo, os desenvolvedores podem exigir que dispositivos menos confiáveis realizem outras etapas de verificação de usuário ao criar uma conta. Ou podem decidir que dispositivos menos confiáveis precisam jogar juntos no mesmo servidor multijogador.

A API Play Integrity bloqueia usuários ou dispositivos?

Não, a API Play Integrity não bloqueia o acesso a nenhuma funcionalidade. É um serviço opcional para desenvolvedores que fornece indicadores e os desenvolvedores escolhem como agir com base neles.

O que os usuários devem fazer se o dispositivo falhar nas verificações de dispositivo da API Play Integrity?

Os usuários podem acessar o app Play Store no dispositivo, abrir o menu "Configurações", rolar para baixo até "Sobre" e procurar em "Certificação do Play Protect". Se houver algum problema com a certificação do Play Protect do dispositivo, haverá um botão que os usuários podem pressionar para tentar corrigir o problema. Isso vai atualizar o status de certificação do dispositivo e fornecer orientações específicas sobre o que precisa ser corrigido.