Para preparar o app para lançamento, configure, crie e teste uma versão de lançamento. As tarefas de configuração envolvem tarefas básicas de limpeza e modificação de código que ajudam a otimizar o app. O processo de build é semelhante ao de build para depuração e pode ser realizado por meio de ferramentas do JDK e do SDK do Android.
Habilidades do Android
Conferir no GitHubVerificar a política do Google Play
play-policy-insights do Android para auditar seu app em relação à conformidade com a política do Google Play.android skills add play-policy-insightsAs tarefas de teste servem como uma verificação final para ajudar a garantir que o app tenha o desempenho esperado em condições reais. O Firebase oferece um conjunto grande de dispositivos de teste físicos e virtuais pelo Firebase Test Lab que podem ser usados para melhorar a qualidade do app.
Quando concluir a preparação do app para lançamento, você terá um arquivo APK assinado, que poderá ser distribuído diretamente aos usuários ou por uma loja de aplicativos como Google Play.
Este documento resume as principais tarefas que você precisa realizar para preparar o app para lançamento. As tarefas descritas nesta página se aplicam a todos os apps Android, independentemente de como eles são lançados ou distribuídos aos usuários. Se você está lançando seu app pelo Google Play, leia Faça lançamentos com confiança.
Observação:como prática recomendada, verifique se o app atende a todos os critérios de lançamento quanto a funcionalidades, desempenho e estabilidade antes de realizar as tarefas descritas nesta página.
Figura 1. A preparação para lançamento é uma tarefa de desenvolvimento necessária e é a primeira etapa no processo de publicação.
Tarefas de preparo para lançamento
Para lançar o app para os usuários, é preciso criar um pacote pronto para lançamento que os usuários possam instalar e executar em dispositivos Android. O pacote pronto para lançamento contém os mesmos componentes que o arquivo APK de depuração, ou seja, código-fonte compilado, recursos, arquivo de manifesto, entre outros, e é criado usando as mesmas ferramentas de build. No entanto, diferente do arquivo APK de depuração, o arquivo APK pronto para lançamento é assinado com o seu certificado e otimizado com a ferramenta zipalign.
Figura 2. Há cinco tarefas principais de preparação do app para lançamento.
Normalmente, as tarefas de otimização e assinatura ocorrem de maneira ideal quando o app é criado com o Android Studio. Por exemplo, você pode usar o Android Studio com os arquivos de build do Gradle para compilar, assinar e otimizar o app de uma vez só. Também é possível configurar os arquivos de build do Gradle para fazer o mesmo em compilações executadas na linha de comando. Para saber mais sobre o uso de arquivos de build do Gradle, consulte Configurar seu build.
Para preparar o app para lançamento, geralmente você realiza cinco tarefas principais, conforme mostrado na Figura 2. Cada tarefa principal pode incluir uma ou mais tarefas menores, dependendo da forma de lançamento do app. Por exemplo, se você está lançando o app no Google Play, pode querer adicionar regras de filtragem especiais ao manifesto durante a configuração. Da mesma forma, para atender às diretrizes de publicação do Google Play, pode ser preciso preparar capturas de tela e criar textos promocionais durante a coleta de materiais para o lançamento.
Geralmente, você realiza as tarefas listadas na Figura 2 depois de depurar e testar o app Android. O SDK do Android contém várias ferramentas para ajudar você a testar e depurar seus apps Android. Para mais informações, consulte Depurar seu app e Testar seu app.
Coleta de materiais e recursos
Coleta de materiais e recursos Para preparar o app para lançamento, é preciso coletar diversos itens de suporte. Isso inclui pelo menos as chaves criptográficas usadas na assinatura e um ícone do app.
Também é possível incluir um contrato de licença de usuário final.
Chaves criptográficas Para a Google Play Store, todos os apps criados após agosto de 2021 precisam usar a Assinatura de app do Play. Mas fazer upload do seu AAB para o Play Console ainda exige que você o assine com seu certificado de desenvolvedor. Apps mais antigos ainda podem ser autoassinados, mas, independentemente de você usar a Assinatura de apps do Google Play ou autoassinar, é preciso assinar o app antes de fazer upload dele.
Para saber mais sobre os requisitos de certificado, consulte Assinar seu app.
Importante: Seu app deve ser assinado com uma chave criptográfica com um período de validade que termina após 22 de outubro de 2033.
Você também pode ter que obter outras chaves de lançamento se seu app acessar um serviço ou usar uma biblioteca de terceiros que exija que você use uma chave que seja baseada na sua chave privada.
Pode ser necessário utilizar outras chaves de lançamento se o app acessar um serviço ou usar uma biblioteca de terceiros que exija uma chave baseada na sua chave privada.
Ícone do app O ícone ajuda o usuário a identificar o app na tela inicial de um dispositivo e na janela "Launcher". Além disso, serviços de publicação como o Google Play exibem seu ícone para os usuários. Além disso, serviços de publicação como o Google Play mostram o íconeaos usuários.
Observação: se você for lançar seu app no Google Play, será necessário criar uma versão de alta resolução do seu ícone. Consulte Adicionar recursos de visualização para mostrar seu app para mais informações.
Para mais informações, consulte Adicionar recursos de pré-visualização para mostrar seu app.
Considere preparar um contrato de licença de usuário final (EULA) para seu app. Um EULA pode ajudar a proteger você, sua organização e sua propriedade intelectual, e recomendamos que você forneça um com seu app.
Prepare um Contrato de licença de usuário final (EULA) para o app. Ele pode ajudar a proteger você, a organização e a propriedade intelectual. Recomendamos disponibilizar um EULA com o app.
Pode ser necessário preparar materiais promocionais e de marketing para divulgar seu app. Por exemplo, se você estiver lançando seu app no Google Play, precisará preparar textos promocionais e criar capturas de tela do app. Para mais informações, consulte Adicionar recursos de pré-visualização para mostrar seu app.
Configurar seu app para lançamento Depois de coletar todos os materiais de apoio, você pode começar a configurar o app para lançamento.
Esta seção oferece um resumo das mudanças de configuração que recomendamos fazer no código-fonte, nos arquivos de recursos e no manifesto do app antes do lançamento. Embora a maioria das mudanças de configuração listadas nesta seção seja opcional, elas são consideradas boas práticas de programação, e sugerimos que você as implemente.
Em alguns casos, essas mudanças já podem ter sido feitas como parte do processo de desenvolvimento.
Escolher um ID do aplicativo adequado Para defini-lo, use a propriedade applicationId no arquivo
de nível de módulo build.gradle ou build.gradle.kts. Para definir o ID, use a propriedade `applicationId` no arquivo `build.gradle` ou `build.gradle.kts` no nível do módulo.
Para mais informações, consulte Definir o ID do aplicativo.
Para configurar se o APK é depurável, use o debuggable
sinalizador para Groovy ou o isDebuggable sinalizador para script Kotlin:
Para configurar se o APK é depurável, use a sinalização `debuggable` para Groovy ou a `isDebuggable` para o script Kotlin:
android { ... buildTypes { release { isDebuggable = false ... } debug { isDebuggable = true ... } } ... }
Groovy
android { ... buildTypes { release { debuggable false ... } debug { debuggable true ... } } ... }
Groovy
Ativar e configurar a redução de apps Muitas das otimizações abaixo podem ser automatizadas ativando a redução para o build de lançamento. Por exemplo, é possível adicionar regras do ProGuard para remover log statements. O redutor vai identificar e remover o código e os recursos não utilizados.
O redutor também pode substituir nomes de classes e variáveis por nomes mais curtos para reduzir ainda mais o tamanho do DEX.
Desativar a geração de registros Desative
a geração de registros Log antes de criar o app para lançamento. Para desativar a geração de registros, remova as chamadas para os métodos `[Log](/reference/android/util/Log)` nos arquivos de origem.
Além disso, remova todos os Debug
tracing calls que você adicionou ao seu código, como
startMethodTracing()
e
stopMethodTracing()
chamadas de método.
Importante: Certifique-se de desativar a depuração do seu app se estiver usando WebView para exibir conteúdo pago ou se estiver usando interfaces JavaScript, pois a depuração permite que os usuários injetem scripts e extraiam conteúdo usando o Chrome DevTools. Para desativar
a depuração, use o
WebView.setWebContentsDebuggingEnabled()
método.
Para desativar a depuração, use o método `WebView.setWebContentsDebuggingEnabled()`.
Limpar os diretórios do projeto e certificar-se de que ele esteja em conformidade com a estrutura de diretórios descrita em Visão geral de projetos. Limpe o projeto e verifique se ele está de acordo com a estrutura de diretórios descrita em Visão geral de projetos. Arquivos perdidos ou órfãos esquecidos no projeto podem evitar a compilação do app e fazer com que ele tenha um comportamento imprevisível.
- No mínimo, execute estas tarefas de limpeza:
cpp/,lib/, esrc/O diretóriocpp/deve conter apenas arquivos de origem associados ao Android NDK, como arquivos de origem C ou C++, arquivos de cabeçalho ou makefiles. O diretóriolib/vai conter apenas arquivos de biblioteca de terceiros ou arquivos de biblioteca privada, incluindo bibliotecas compartilhadas e estáticas pré-compiladas. O diretóriosrc/vai conter apenas arquivos de bibliotecas de terceiros ou particulares, incluindo bibliotecas pré-criadas e estáticas. O diretóriosrc/vai conter apenas os arquivos de origem do app (arquivos Java, Kotlin e AIDL). - Verifique seu projeto para arquivos de dados privados ou proprietários que seu aplicativo
não usa e remova-os. Confira se o projeto contém arquivos de dados particulares ou reservados que não são usados pelo app e os remova.
res/ - Por exemplo, procure no diretório
lib/do projeto arquivos antigos drawables, de layout e de valores que você não está mais usando e exclua-os se não estiverem mais sendo usados pelo seu app. - Verifique o conteúdo do seu diretório
assets/e do seu diretóriores/raw/para arquivos de recursos brutos e arquivos estáticos que você precisa atualizar ou remover antes do lançamento.
Revise o conteúdo dos diretórios `assets/` e `res/raw/` para conferir se há arquivos de ativos brutos e estáticos que precisam ser atualizados ou removidos antes do lançamento.
Revisar e atualizar o manifesto e as configurações de build do Gradle
- elemento
<uses-permission>Elemento `<uses-permission>`
android:iconeandroid:labelatributosVocê deve especificar valores para estes atributos, que estão localizados no
<application>elemento.- É necessário especificar valores para esses
versionCodeversionNameatributos, que estão localizados no elemento `<application>`.Recomendamos que você especifique valores para essas propriedades, que estão localizadas no arquivo
build.gradleoubuild.gradle.ktsno nível do módulo do app. Para obter mais informações, consulte Criar versões do app.
Há vários elementos de arquivo de build adicionais que você pode definir se estiver lançando seu app no Google Play. Por exemplo, os atributos minSdk e
targetSdk, que estão localizados no arquivo
build.gradle ou build.gradle.kts no nível do módulo do app. Para mais
informações sobre estas e outras configurações do Google Play, consulte Filtros no Google Play.
Para ver mais informações sobre essas e outras configurações do Google Play, consulte Filtros no Google Play.
Resolver problemas de compatibilidade O Android oferece diversas ferramentas e técnicas para tornar o app compatível com uma grande variedade de dispositivos.
- Para disponibilizar o app para o maior número de usuários possível, faça o seguinte:
- Adicione suporte para configurações com várias telas. Ao oferecer suporte a várias configurações de tela, você pode criar um app que funciona corretamente e tem boa aparência em qualquer um dos tamanhos de tela compatíveis com o Android.
- O suporte a configurações de várias telas permite criar um app que funciona corretamente e com boa aparência nos tamanhos de tela com suporte no Android.
- Otimizar seu app para telas maiores. É possível otimizar o app para funcionar bem em dispositivos com telas grandes, como tablets e dobráveis.
- Por exemplo, layouts de detalhes de lista podem melhorar a usabilidade em telas maiores.
- O Jetpack é um pacote de bibliotecas para ajudar os desenvolvedores a seguir as práticas recomendadas, reduzir o código boilerplate e escrever código que funcione de forma consistente em todas as versões e dispositivos Android.
O Jetpack é um pacote de bibliotecas que ajuda desenvolvedores a seguir as práticas recomendadas, reduzir códigos boilerplate e programar códigos que funcionam de maneira consistente em diferentes dispositivos e versões do Android.
Atualizar URLs para servidores e serviços
Se o app acessa servidores ou serviços remotos, use o URL ou caminho de produção para o servidor ou serviço, não o URL ou caminho de teste.
Implementar o licenciamento para o Google Play Se você está lançando um app pago no Google Play, pode adicionar suporte ao Google Play Licensing. O uso do Licenciamento do Google Play é opcional, mesmo que você esteja lançando seu app pelo Google Play.
Para mais informações sobre o Google Play Licensing Service e como usá lo no seu app, consulte App Licensing.
Para mais informações sobre o serviço Google Play Licensing e saber como usá-lo no app, consulte Licenciamento do app.
Criar seu app para o lançamento O JDK inclui as ferramentas para assinar o arquivo APK (Keytool e Jarsigner); o SDK do Android inclui as ferramentas para compilar e otimizar o arquivo APK. Se você estiver usando o Android Studio ou o sistema de build Gradle a partir da linha de comando, você pode automatizar todo o processo de build. Para mais informações sobre como configurar builds do Gradle, consulte Configurar variantes de build.
Se você estiver usando um sistema de integração contínua, poderá configurar uma tarefa para automatizar seu processo de lançamento. Se você estiver usando um sistema de integração contínua, poderá configurar uma tarefa para automatizar o processo de lançamento. Também é possível configurá-lo para fazer upload automático dos artefatos do build para o Play Console.
Criar com o Android Studio
Use o sistema de build do Gradle integrado ao Android Studio para criar um arquivo APK pronto para lançamento, otimizado e assinado com a chave privada. Para aprender a configurar e executar builds no Android Studio, consulte Criar e executar o app.
O processo de build presume que você tem um certificado e uma chave privada adequados para assinar o app. Se você não os tiver, o Android Studio pode ajudar a gerá-los. Para mais informações sobre o processo de assinatura, consulte Assinar o app.
Preparar servidores e recursos externos
Se o app utilizar um servidor remoto, verifique se o servidor é seguro e se está configurado para uso em produção. Isso é especialmente importante se você está implementando o Faturamento em apps em seu app e executando a etapa de verificação da assinatura em um servidor remoto.
Além disso, se o app busca conteúdo de um servidor remoto ou de um serviço em tempo real (como um feed de conteúdo), verifique se o conteúdo que você oferece está atualizado e pronto para produção.
Testar seu app para o lançamento
O teste da versão de lançamento do app ajuda a garantir que ele seja executado corretamente em condições reais de dispositivos e rede. O ideal é testá-lo em pelo menos um dispositivo com tamanho de celular e em um com tamanho de tablet para verificar se os elementos da interface do usuário têm o tamanho correto e se o desempenho do app e o consumo de bateria são aceitáveis. O Firebase Test Lab também pode ser útil para testar em uma variedade de dispositivos e versões do SO Android.
Como ponto de partida para o teste, consulte Principais critérios de qualidade do app. Quando você concluir os testes e achar que o comportamento da versão de lançamento do app é adequado, poderá lançá-lo para os usuários. Para saber mais, consulte Lançar o app para os usuários.