Como gerar uma apk com Ionic Framework?

Dicas rápidas para publicar sua apk no Google Play Store

Danielle Teixeira
Blog do LFDev
3 min readJan 17, 2017

--

Atualmente existem várias tecnologias híbridas para desenvolvimento mobile onde o aplicativo é portado para diversas plataformas. Resolvi então usar o Ionic Framework para aplicações híbridas baseado em Cordova e por utilizar HTML5 e AngularJS.

Achei mais prático do que Android nativo, componentes de interface bem claros, até aí tudo bem, a surpresa surgiu na etapa de publicação do aplicativo no Google Play Store e descobri que precisa gerar certificado, assinar e alinhar. Passei por algumas dificuldades em assinar a APK e por isso resolvi deixar registrado o passo a passo ao utilizar o Ionic CLI você pode seguir os comandos:

Primeiramente devemos adicionar a plataforma desejada, no meu caso utilizei Android.

1) Adicionando a plataforma desejada

Não é necessário reinstalar os plugins, uma vez que pois esse comando já atualiza qualquer plugin previamente instalado.

$ ionic platform add android

Aproveite também para configurar os ícones/imagens do app na pasta “\resources\android” e alterar página de configurações a config.xml e as versões do app a ser publicado.

2) Preparando App para envio ao Google Play Store

Uma vez adicionada a plataforma desejada, é a vez de gerar o build que vai criar nosso arquivo apk de nome android-release-unsigned.apk. Essa é a chave da questão, vamos usar esse apk como nossa aplicação.

$ ionic build — release android

3) Gerar certificado do App

Nessa etapa vamos alinhar para posteriormente assinar o apk, o ato de assinar o apk é necessário para gerar uma chave criptográfica. Blz então, nossa chave é gerada através da ferramenta keytool do Java, note que onde tem o parâmetro -keystore SEU-APP você deve editar para o nome do seu projeto. Após informar o comando, são realizadas algumas perguntas, lembre-se de anotar a senha definida neste momento, pois sem ela em momento posterior não é possível atualizá-lo.

$ keytool -genkey -v -keystore SEU-APP.keystore -alias SEU-APP -keyalg RSA -keysize 2048 -validity 10000

Nota: O parâmetro, -keyalg determina o tipo do teu algoritmo, sendo este a chave (RSA). O parâmetro, -keysize, define o tamanho da chave (aqui definimos com 2048 bits). Já o parâmetro, -validity, determina o tempo de validade do certificado (10.000 dias).

4) Assinar o Apk

Após gerar o certificado vamos então assinar nosso apk e assim basicamente passar o parametro a chave que geramos com o keytool.

$ jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore SEU-APP.keystore android-release-unsigned.apk SEU-APP

5) Alinhar o apk

Até agora, foi gerado o certificado assinado e fica restando alinhar antes de submetermos nosso aplicativo na loja. Como pré-requisito você deve ter instalado em sua máquina o Android Studio para executar o comando zipalign que vem junto com o android sdk:

$ zipalign -v 4 android-release-NOMEDASUAAPP.apk NOMEDASUAAPP.apk

Nota: Se você tentou rodar o comando de alinhamento do APK e não funcionou, como no meu caso, significa que ocorreu um erro no Zipalign que não foi não encontrado.

A solução encontrada: verifique na sua pasta do SDK ANDROID se o arquivo está lá, no meu caso:

C:\Users\Danielle\AppData\Local\Android\sdk\build-tools\23.0.2

Procure pelo zipalign.exe copie e cole na sua pasta do APK do seu projeto Ionic 1 C:\Users\Danielle\appionic\hotelaria\platforms\android\build\outputs\apk Após isto, execute o comando novamente e você poderá finalmente alinhar seu apk para então publicar na Google Play.

6) Publicar no Google Play

Para publicar é necessário ter uma conta de desenvolvedor, sendo cobrada uma taxa de apenas US $25.00, agora é só enviar para o Google Play o arquivo signed.apk preenchendo os campos do formulário. Mais informações http://ionicframework.com/docs/guide/publishing.html

--

--

Danielle Teixeira
Blog do LFDev

Desenvolvedora Mobile , Pesquisadora em IoT e Machine Learning, Organizer GDG Lauro de Freitas e Embaixadora Women Techmakers