Migrar apps para o Android 13

Este documento oferece uma visão de alto nível das fases típicas de desenvolvimento e teste que podem ajudá-lo a fazer um plano de prontidão que esteja bem alinhado com os de lançamento da plataforma e garante uma ótima experiência para seus usuários em Android 13

A cada versão do Android, introduzimos novos recursos e comportamentos mudanças com o objetivo de tornar o Android mais útil, mais seguro e mais eficiente. Em muitos casos, seu aplicativo funcionará exatamente como esperado, em outros casos, pode ser necessário atualizar o app para se adaptar às mudanças da plataforma.

Os usuários podem começar a receber a nova plataforma assim que o código-fonte for lançado no AOSP (Android Open Source Project), por isso é importante que seus apps estejam prontos, com o desempenho esperado para os usuários e, de preferência, aproveitando novos recursos e APIs para aproveitar ao máximo a nova plataforma.

Uma migração típica tem duas fases, que podem ser simultâneas:

  • Garantir a compatibilidade do app (até a versão final do Android 13)
  • Direcionar aos novos recursos e APIs da plataforma (assim que possível, depois de versão final)

Garantir a compatibilidade com o Android 13

É importante testar a funcionalidade do seu app atual em relação o Android 13 para garantir uma ótima experiência aos usuários que fizerem a atualização para a versão mais recente do Android. Algumas mudanças na plataforma podem afetar a forma como seu app se comporta. Por isso, é importante testar cedo e completamente ajustes no seu app.

Normalmente, é possível ajustar o app e publicar uma atualização sem precisar mudar o targetSdkVersion. Da mesma forma, você não precisa usar novas APIs ou mude a compileSdkVersion do app, embora isso possa depender da forma como do app foi criado e a funcionalidade da plataforma que ele está usando.

Antes de iniciar os testes, familiarize-se com o comportamento mudanças para todos os apps. Essas mudanças podem afetar seu app, mesmo que você não mudar a targetSdkVersion dele.

Instalar o Android 13

Atualize uma imagem do sistema Android 13 no dispositivo ou faça o download de uma imagem de sistema no Android Emulator.

Verificar as alterações

Analise as mudanças de comportamento do sistema para identificar as áreas em que o app poderá ser afetado.

Teste

Instale o app no dispositivo ou emulador e faça testes. Fique atento às mudanças de comportamento do sistema e trabalhe em todos os fluxos do app.

Atualizar

Faça somente as mudanças de código necessárias para adaptar o app às mudanças de comportamento ou resolver problemas. Recompile com o mesmo nível de API a que o app foi originalmente destinado, sem precisar o direcionar para o Android 13.

Publicar

Assine, faça upload e publique seu Android App Bundle ou APK atualizado.

Realizar testes de compatibilidade

Na maioria dos casos, os testes de compatibilidade com o Android 13 são parecidos com os testes comuns de apps. Esse é um bom momento para analisar as principais diretrizes de qualidade de apps e as práticas recomendadas para testes.

Para testar, instale o app publicado em um dispositivo com o Android 13 e trabalhe em todos os fluxos e funcionalidades, verificando se há problemas. Para ajudar você a concentrar os testes, analise as mudanças de comportamento para todos os apps introduzidas no Android 13 que podem afetar o funcionamento do app ou causar falhas.

Além disso, analise e teste os usos de conteúdos não SDK restritos do Google Cloud. Substitua as interfaces restritas que o app usa um SDK público ou equivalente do NDK. Fique de olho nos avisos do Logcat que destacam essas acessos e usar o método StrictMode detectNonSdkApiUsage() para capturar programaticamente.

Por fim, teste totalmente as bibliotecas e os SDKs no app para garantir que eles funcionem da forma esperada no Android 13 e sigam as práticas recomendadas de privacidade, performance, UX, processamento de dados e permissões. Se você encontrar um problema, tente atualizar para a versão mais recente do SDK ou entre em contato com o desenvolvedor do SDK para receber ajuda.

Quando terminar o teste e fizer as atualizações, recomendamos publicar seu app compatível imediatamente. Isso permite que os usuários testem o app com antecedência e ajuda a garantir uma transição tranquila para os usuários à medida que eles fazem a atualização para o Android 13.

Atualizar versão de destino do app e criar com novas APIs

Depois de publicar uma versão compatível do app, a próxima etapa é adicionar suporte total ao Android 13 atualizando a targetSdkVersion e aproveitar as novas APIs e recursos do Android 13. Você poderá fazer essas atualizações assim que estiver pronto. Lembre-se do Google Requisitos do Google Play para segmentar a nova plataforma.

À medida que você planeja o trabalho para oferecer suporte total ao Android 13, analise as mudanças de comportamento que afetam os apps destinados ao Android 13. Essas mudanças esperadas de comportamento podem causar problemas funcionais que você precisa endereço IP. Em alguns casos, essas mudanças exigem desenvolvimento significativo, por isso nós recomendamos aprender e abordá-los o mais cedo possível. Para ajudar identificar mudanças de comportamento específicas que afetam seu aplicativo, use a tag de compatibilidade de controle para testar seu app com as mudanças selecionadas ativadas.

As etapas a seguir descrevem como oferecer suporte total ao Android 13.

Instalar o SDK do Android 13

Instale a versão mais recente de pré-lançamento do Android Studio para criar com o Android 13. Use um dispositivo ou emulador com o Android 13.
Atualize a targetSdkVersion e outras configurações do build.

Analisar as mudanças de comportamento

Analise as mudanças de comportamento que se aplicam a apps destinados ao Android 13. Identifique as áreas em que o app pode ser afetado e planeje formas de oferecer suporte.

Verificar novas mudanças de privacidade

Faça as mudanças no código e na arquitetura necessárias para oferecer suporte às mudanças de privacidade do usuário do Android 13.

Adotar recursos do Android 13

Aproveite as APIs do Android 13 para oferecer novos recursos e funcionalidades no app. Recompile para o Android 13.

Teste

Faça testes em um dispositivo ou emulador Android 13. Foque nas áreas em que as mudanças de comportamento podem afetar o app. Teste funcionalidades que usam as novas APIs. Envie feedback sobre a plataforma e a API. Relate problemas na plataforma, API ou SDK de terceiros.

Atualização final

Quando as APIs do Android 13 forem concluídas, atualize a targetSdkVersion e outras configurações do build novamente, faça outras atualizações e teste o app.

Publicar

Assine, faça upload e publique seu Android App Bundle ou APK atualizado.

Acessar o SDK, alterar o destino, criar com novas APIs

Para iniciar o teste de suporte total ao Android 13, use a versão mais recente versão de pré-lançamento do Android Studio para fazer o download do SDK do Android 13 e outras ferramentas de que você precisa. Em seguida, atualize a targetSdkVersion e compileSdkVersion e recompile o app. Consulte o guia de configuração do SDK para detalhes.

Testar o app para Android 13

Depois de compilar o aplicativo e instalá-lo em um dispositivo que executa Android 13, começar a testar para garantir que o app funciona corretamente ao direcionar para o Android 13. Algumas mudanças de comportamento se aplicam somente quando o app é criado para a nova plataforma. Portanto, convém revisar essas mudanças antes de começar.

Assim como nos testes básicos de compatibilidade, trabalhe em todos os fluxos e funcionalidades para verificar se há problemas. Concentre seus testes nas mudanças de comportamento para apps destinados ao Android 13. Também é um bom momento para verificar se o app está de acordo com as principais diretrizes de qualidade de apps e as práticas recomendadas para testes.

Revise e teste os usos de interfaces não SDK restritas que possam ser aplicadas. Fique de olho nos avisos do Logcat que destacam esses acessos e usam o método StrictMode detectNonSdkApiUsage() para capturá-los programaticamente.

Por fim, teste totalmente as bibliotecas e os SDKs no app para garantir que eles funcionem da forma esperada no Android 13 e sigam as práticas recomendadas de privacidade, performance, UX, processamento de dados e permissões. Se você encontrar um problema, tente atualizar para a versão mais recente do SDK ou entre em contato com o desenvolvedor do SDK para receber ajuda.

Testar usando alternâncias de compatibilidade de apps

O Android 13 inclui alternâncias de compatibilidade que facilitam o teste do app com mudanças de comportamento esperadas. Para um app depurável, as alternâncias permitem que você:

  • Teste as mudanças esperadas sem realmente mudar a targetSdkVersion do app. Você pode usar as alternâncias para forçar a ativação de mudanças específicas de comportamento esperado e avaliar o impacto no app existente.
  • Concentre seus testes somente em mudanças específicas. Em vez de ter que resolver todas as mudanças esperadas de uma só vez, as alternâncias permitem as desativar, exceto as que você quer testar.
  • Gerencie alternâncias por meio do adb. É possível usar comandos adb para ativar e desativar as mudanças alternáveis no seu ambiente de teste automatizado.
  • Depure mais rapidamente usando códigos de mudança padrão. Cada mudança alternável tem ID e nome exclusivos que podem ser usados para depurar rapidamente a causa raiz no registro saída.

À medida que você se prepara para mudar a versão de destino do app ou enquanto está em desenvolvimento ativo para oferecer suporte ao Android 13, as alternâncias podem ajudar. Para ver mais informações, consulte Mudanças no framework de compatibilidade (Android 13).