Compatibilidade do app no Android

Em Android, o termo compatibilidade do app significa que ele é executado corretamente em uma versão específica da plataforma, geralmente a versão mais recente. A cada versão, fazemos mudanças importantes que melhoram a privacidade e a segurança, e implementamos alterações que aprimoram a experiência geral do usuário no SO. Algumas vezes, essas mudanças podem afetar seus apps. Por isso, é importante dar uma olhada nas mudanças de comportamento incluídas em cada versão lançada, testá-las e publicar atualizações de compatibilidade para os usuários.

Por que a compatibilidade do app é importante

A compatibilidade do app começa a afetar os usuários imediatamente quando eles atualizam para a versão mais recente do Android, independentemente de terem comprado um novo dispositivo ou instalado uma atualização no dispositivo atual. Eles estão animados para conhecer a versão mais recente do Android e querem testá-la com seus apps favoritos. Se os apps não funcionarem corretamente, isso poderá causar problemas graves para eles e para você.

Tipos de mudança de comportamento da plataforma

Seu app pode ser afetado por dois tipos diferentes de mudanças quando executado em uma nova versão da plataforma:

Mudanças para todos os apps

Essas mudanças afetam todos os apps executados nessa versão do Android, independentemente da targetSdkVersion do app.

Teste a compatibilidade do seu app com essas mudanças de forma proativa durante a visualização do desenvolvedor e as versões Beta de cada nova versão do Android. As atualizações para o Pixel e outros dispositivos começam assim que uma nova versão do Android chega à versão final do Android Open Source Project (AOSP). Portanto, ao você testar proativamente essas mudanças, você ajuda a garantir que os usuários possam fazer uma transição tranquila para a versão mais recente do Android nesses dispositivos.

Mudanças direcionadas

Essas mudanças afetam apenas os apps voltados para essa versão do Android.

Para essas mudanças, realize testes de compatibilidade ao se preparar para direcionar à versão estável mais recente da API, que atualmente é o Android 11 (API de nível 30). Mesmo que você não pretenda direcionar para uma nova versão do Android imediatamente, lidar com essas mudanças pode exigir uma quantidade significativa de desenvolvimento. Portanto, você precisa conhecê-las o quanto antes, de preferência durante a visualização do desenvolvedor e as versões Beta de cada nova versão do Android, para que você possa fazer testes preliminares e fornecer feedback.

Ferramentas de framework de compatibilidade

Para ajudar você a testar a compatibilidade, incluímos o maior número possível de alterações interruptivas de cada versão no framework de compatibilidade. A inclusão de uma mudança no framework de compatibilidade faz com que ela possa ser ativada ou desativada, permitindo forçar a ativação ou desativação das mudanças individualmente nas opções do desenvolvedor ou no ADB. Ao usar o framework de compatibilidade, não é necessário alterar a targetSdkVersion nem recompilar o app para testes básicos.

Para saber mais, consulte Testar e depurar mudanças de comportamento da plataforma no seu app.

Restrições para interfaces que não são SDK

Como parte do nosso esforço contínuo para que os desenvolvedores deixem gradualmente de usar APIs que não sejam do SDK, atualizamos as listas de interfaces não SDK restritas em cada versão do Android. Como sempre, seu feedback e solicitações de equivalentes de API pública são bem-vindos.

Versões da plataforma

Saiba mais sobre as versões mais recentes do Android: