Para preparar o aplicativo para lançamento, configure, crie e teste uma versão de lançamento. As tarefas de configuração são objetivas. A limpeza e modificação do código ajudam a otimizar o aplicativo. O processo de compilação é semelhante ao de build para depuração e pode ser realizado por meio de ferramentas do JDK e do Android SDK. As tarefas de teste servem como uma verificação final para garantir que o aplicativo tenha o desempenho esperado em condições reais. Quando concluir a preparação do aplicativo para lançamento, você terá um arquivo APK assinado, que poderá ser distribuído diretamente aos usuários ou por meio de uma loja de aplicativos como o Google Play.
Este documento resume as principais tarefas que precisam ser realizadas para preparar o aplicativo para lançamento. As tarefas descritas neste documento se aplicam a todos os aplicativos para Android, independentemente da forma de lançamento ou distribuição para os usuários. Se você estiver lançando seu aplicativo pelo Google Play, leia também a Lista de verificação para publicação no Google Play.
Observação: como prática recomendada, o aplicativo precisa cumprir todos os seus critérios de lançamento quanto à funcionalidade, desempenho e estabilidade antes de você executar as tarefas descritas neste documento.

Figura 1. A preparação para lançamento é uma tarefa de desenvolvimento necessária e é a primeira etapa no processo de publicação.
Introdução
Para lançar o aplicativo 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, ao contrário do arquivo APK de depuração, o arquivo APK pronto para lançamento é assinado com seu certificado e otimizado com a ferramenta zipalign.

Figura 2. Cinco tarefas principais são realizadas para preparar o aplicativo para lançamento.
Normalmente, as tarefas de otimização e assinatura ocorrem de maneira ideal quando o aplicativo é 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 aplicativo de uma vez só. Também é possível configurar os arquivos de build do Gradle para fazer o mesmo ao criar usando a linha de comando. Para saber mais sobre o uso de arquivos de build do Gradle, consulte o guia Sistema de compilação.
Normalmente, para preparar o aplicativo para lançamento, você executa cinco tarefas principais (veja a figura 2). Cada tarefa principal pode incluir uma ou mais tarefas menores, dependendo da forma de lançamento do aplicativo. Por exemplo, se você está lançando o aplicativo no Google Play, pode querer adicionar regras de filtragem especiais ao manifesto durante a configuração do aplicativo para lançamento. 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.
Normalmente, as tarefas listadas na figura 2 são realizadas depois de depurar e testar cuidadosamente o aplicativo. O Android SDK contém diversas ferramentas para ajudar a testar e depurar aplicativos Android. Para ver mais informações, consulte as seções Depuração e Teste no guia do desenvolvedor.
Coleta de materiais e recursos
Para preparar o aplicativo para lançamento, é preciso coletar diversos itens de suporte. Isso inclui, no mínimo, as chaves criptográficas usadas na assinatura e um ícone do aplicativo. Também é possível incluir um contrato de licença de usuário final.
Chaves criptográficas
O sistema Android exige que cada aplicativo instalado seja assinado digitalmente com um certificado pertencente ao desenvolvedor, ou seja, um certificado cuja chave privada pertence ao desenvolvedor. O sistema Android usa o certificado como forma de identificar o autor de um aplicativo e estabelecer relações de confiança entre os aplicativos. O certificado usado na assinatura não precisa ser assinado por uma autoridade de certificação. O sistema Android permite assinar os aplicativos com um certificado autoassinado. Para saber mais sobre os requisitos para certificados, consulte Assinar o aplicativo.
Importante: o aplicativo precisa ser assinado com uma chave criptográfica válida até depois de 22 de outubro de 2033.
Poderá ser necessário utilizar outras chaves de lançamento se o aplicativo acessar um serviço ou usar uma biblioteca de terceiros que exija uma chave baseada na sua chave privada.
Ícone do app
Verifique se você tem um ícone de aplicativo e se ele atende às diretrizes para ícones (link em inglês) recomendadas. O ícone ajuda o usuário a identificar o aplicativo na tela inicial de um dispositivo e na janela "Launcher". Ele também aparece em "Manage Applications", "My Downloads" e em outros locais. Além disso, serviços de publicação como o Google Play exibem o ícone aos usuários.
Observação: se você está lançando o aplicativo no Google Play, é preciso criar uma versão do ícone em alta resolução. Para ver mais informações, consulte Recursos gráficos para aplicativos.
Contrato de licença de usuário final
Considere a preparação de um contrato de licença de usuário final (EULA, na sigla em inglês) para o aplicativo. Um EULA pode ajudar a proteger você, a organização e a propriedade intelectual. Recomendamos disponibilizar um EULA com o aplicativo.
Materiais diversos
Também pode ser necessário preparar materiais promocionais e de marketing para divulgar o aplicativo. Por exemplo, se você estiver lançando o aplicativo no Google Play, precisará preparar textos promocionais e criar capturas de tela do aplicativo. Para ver mais informações, consulte Recursos gráficos para aplicativos.
Configurar o aplicativo para lançamento
Depois de coletar todos os materiais de apoio, você pode começar a configurar o aplicativo 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 aplicativo antes do lançamento. Embora a maioria das alterações 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 alterações já podem ter sido feitas como parte do processo de desenvolvimento.
Escolher um bom nome para o pacote
Escolha um nome de pacote adequado para todo o período de validade do aplicativo. Não será possível mudar o nome do pacote depois de distribuir o aplicativo aos usuários. Você pode definir o nome do pacote no arquivo de manifesto do aplicativo. Para ver mais informações, consulte a documentação do atributo package.
Desativar a geração de registros e a depuração
Desative a geração de registros e a opção de depuração antes de criar o
aplicativo para lançamento. Para desativar a geração de registros, remova as chamadas para os métodos
Log
nos arquivos de origem. Desative a depuração removendo o atributo
android:debuggable
da tag <application>
ou definindo o atributo android:debuggable
para
false
no arquivo de manifesto. Além disso, remova todos os arquivos de registro ou de teste estáticos
criados no projeto.
Recomendamos também a remoção de todas as chamadas de rastreamento Debug
adicionadas ao código, como chamadas do método startMethodTracing()
e
stopMethodTracing()
.
Importante: se você estiver usando o WebView
para
exibir conteúdo pago ou se estiver usando interfaces JavaScript,
verifique se desativou a depuração do app, uma vez que ela permite que o usuário injete scripts e extraia conteúdo usando o Chrome
DevTools. Para desativar a depuração, use o
método
WebView.setWebContentsDebuggingEnabled()
.
Limpar os diretórios do projeto
Limpe o projeto e verifique se ele está de acordo com a estrutura de diretórios descrita em Projetos Android. Arquivos perdidos ou órfãos esquecidos no projeto podem evitar a compilação do aplicativo e fazer com que ele tenha um comportamento imprevisível. Realize pelo menos as seguintes tarefas de limpeza:
- Revise o conteúdo dos diretórios
jni/
,lib/
esrc/
. O diretóriojni/
conterá somente arquivos associados ao Android NDK, como arquivos.c
,.cpp
,.h
e.mk
. O diretóriolib/
conterá somente arquivos de bibliotecas de terceiros ou privadas, incluindo bibliotecas pré-compiladas e estáticas (por exemplo, arquivos.so
). O diretóriosrc/
conterá somente os arquivos de origem do aplicativo (arquivos.java
e.aidl
). O diretóriosrc/
não pode conter nenhum arquivo.jar
. - Confira se o projeto contém arquivos de dados privados ou reservados que não são usados
pelo aplicativo e remova-os. Por exemplo, procure no diretório
res/
do projeto arquivos antigos drawables, de layout e de valores que você não está mais usando e exclua-os. - Verifique se há bibliotecas de teste no diretório
lib/
e remova-as se não estiverem mais sendo usadas pelo aplicativo. - Revise o conteúdo dos diretórios
assets/
eres/raw/
para ver 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
Verifique se os seguintes itens dos arquivos de manifesto e de build estão definidos corretamente:
- Elemento
<uses-permission>
Especifique apenas as permissões relevantes e necessárias para o aplicativo.
- atributos
android:icon
eandroid:label
É preciso especificar os valores desses atributos, localizados no elemento <application>.
- atributos
android:versionCode
eandroid:versionName
Recomendamos especificar os valores desses atributos, localizados no elemento <manifest>. Para ver mais informações, consulte Controlar versões do aplicativo.
Existem vários outros elementos de arquivos de manifesto ou build que poderão ser definidos se você estiver lançando o
aplicativo no Google Play. Por exemplo, os atributos android:minSdkVersion
e
android:targetSdkVersion
, que estão localizados no elemento <uses-sdk>. 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 aplicativo compatível com uma grande variedade de dispositivos. Para disponibilizar o aplicativo para o maior número possível de usuários, faça o seguinte:
- Adicione compatibilidade para configurações com diversas telas.
Verifique se está cumprindo as práticas recomendadas para compatibilidade com diversas telas. A compatibilidade com configurações para várias telas permite criar um aplicativo que funciona corretamente e com boa aparência nos tamanhos de tela compatíveis com o Android.
- Otimize o aplicativo para dispositivos tablet do Android.
Se o aplicativo for projetado para dispositivos anteriores ao Android 3.0, torne-o compatível com essa versão do Android seguindo as orientações e práticas recomendadas descritas em Otimizar apps para o Android 3.0 .
- Use a Biblioteca de Suporte.
Se o aplicativo for projetado para dispositivos com o Android 3.x, torne-o compatível com versões anteriores do Android adicionando a Biblioteca de Suporte ao projeto dele. A Biblioteca de Suporte oferece bibliotecas estáticas que podem ser adicionadas ao aplicativo Android, o que permite usar APIs que não estão disponíveis em versões antigas da plataforma ou APIs de utilitários que não fazem parte das APIs do framework.
Atualizar URLs para servidores e serviços
Se o aplicativo acessa servidores ou serviços remotos, você precisa usar 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 lançamento no Google Play)
Se você está lançando um aplicativo pago no Google Play, pode adicionar compatibilidade com o Google Play Licensing. O licenciamento permite controlar o acesso ao aplicativo dependendo da compra ou não do aplicativo pelo usuário. O uso do Google Play Licensing é opcional, mesmo que você lance o app nessa plataforma.
Para ver mais informações sobre o serviço Google Play Licensing e saber como usá-lo no aplicativo, consulte Licenciamento do aplicativo.
Criar o aplicativo para lançamento
Depois de concluir a configuração do aplicativo, você pode iniciar a criação em um arquivo APK pronto para lançamento, assinado e otimizado. O JDK contém as ferramentas para assinar o arquivo APK (Keytool e Jarsigner). O Android SDK contém as ferramentas para compilar e otimizar o arquivo APK. Se você está usando o Android Studio ou o sistema de compilação do Gradle na linha de comando, pode automatizar todo o processo de compilação. Para ver mais informações sobre como configurar os builds do Gradle, consulte Configurar builds do Gradle.
Criar com o Android Studio
Use o sistema de compilação do Gradle integrado ao Android Studio para criar um arquivo APK pronto para lançamento, otimizado e assinado com a chave privada. Para saber como configurar e executar builds no Android Studio, consulte Criar e executar no Android Studio.
O processo de compilação presume que você tem um certificado e uma chave privada adequados para assinar o aplicativo. Se você não tem um certificado e uma chave privada adequados, o Android Studio pode ajudar a gerá-los. Para ver mais informações sobre o processo de assinatura, consulte Assinar o aplicativo.
Preparar servidores e recursos externos
Se o aplicativo 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 e executando a etapa de verificação da assinatura em um servidor remoto.
Além disso, se o aplicativo 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 o aplicativo para o lançamento
O teste da versão de lançamento do aplicativo ajuda a garantir que ele seja executado corretamente em condições reais de dispositivos e rede. O ideal é testar o aplicativo 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 aplicativo e o consumo de bateria são aceitáveis.
Como ponto de partida para o teste, consulte O que testar. Esse artigo oferece um resumo de situações comuns no Android que precisam ser consideradas durante os testes. Quando você concluir os testes e achar que o comportamento da versão de lançamento do aplicativo é adequado, poderá lançá-lo para os usuários. Para ver mais informações, consulte Lançar o aplicativo para os usuários. Se você estiver publicando o aplicativo no Google Play, consulte a Lista de verificação de lançamento para o Google Play.