Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Publicando APP nas lojas

Estou tendo muita dificuldade para publicação do APP desenvolvido nas lojas...

No GooglePlay, tenho que subir o arquivo .apk, correto? encontrei dentro do meu projeto no caminho:

platforms > android > build > outputs > apk >

dois arquivos:

android-debug-unaligned.apk android-debug.apk

Pesquisei na internet, e me parece que um é otimizado com zipalign para memoria e outro nao.

Tentei subir o otimizado e recebi um aviso de erro de que o arquivo e depuravel, e que no posso publicar um apk depuravel...

e agora josé?

Algum outro caminho menos tortuoso? Outra observação: Poderia ter uma busca no forum pra achar pessoas que passaram pelo mesmo problema e otimizar a resolucao...

2 respostas
solução!

Oi Marcio! Não conta pra ninguem mas copiei a parte sobre o apk pra loja do meu livro de Cordova. Ve se ajuda:


Preparação da App

No terminal, gere o apk final com:

cordova build android --release

Talvez você receba um erro do tipo MissingTranslation. Nesse caso, crie um arquivo platforms/android/build-extras.gradle com o conteúdo a seguir, e exporte de novo:

android {
  lintOptions { disable 'MissingTranslation', 'ExtraTranslation' }
}

O apk será gerado em:

platforms/android/build/outputs/apk/android-release-unsigned.apk

Assinando a App

Se você nunca publicou nada, vai precisar de um par de chaves para assinar sua App digitalmente. Vamos gerar essas chaves primeiro.

Para isso, vamos usar o utilitário keytool no terminal. Ele veio instalado junto com o Java JDK, então deve estar disponível para você. Execute em um único comando:

keytool -genkey -v -keystore chave-android.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

Ele vai pedir uma senha para desbloquear a chave.

Importantíssimo

Guarde essas chaves com sua vida. Você não pode perder esses arquivos; se perder não consegue mais atualizar a App. E se caírem em mão erradas, podem ser usadas para coisas maliciosas em seu nome.

Para assinar a App, usamos o jarsigner, que também veio no JDK. Ele recebe o arquivo da chave e o arquivo apk que geramos antes. Execute em um único comando:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore chave-android.keystore android-release-unsigned.apk alias_name

O último passo é rodar o utilitátio zipalign que vem no Android SDK. Ele ajeita algumas coisas no arquivo antes da publicação.

zipalign -v 4 android-release-unsigned.apk SoDeCenouraFinal.apk

Caso não esteja no seu PATH, o zipalign pode ser encontrado na pasta do Android SDK em build-tools/VERSAO/zipalign.

É possível fazer a exportação e assinatura do apk pelo Android Studio se você o tiver aberto. A complexidade é a mesma, mas você faz com uma interface visual.

Consulte: https://developer.android.com/studio/publish/app-signing.html

Aeeeeee!!! Muito obrigado!!! :)

Abração!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software