03 Noviembre


Cómo preparar una aplicación Android hecha con Phonegap lista para subir a Google Play

Phonegap es sin dudas una plataforma muy ventajosa para crear aplicaciones móviles partiendo de los conocimientos que se tengan de HTML5, CSS3 Y Javascript. Además, su principal ventaja radica en que puedes reciclar todo el código y generar la misma aplicación para diferentes plataformas (Android, iOS, WP, etc).

Hasta aquí todo parece sencillo pero a veces las cosas se complican en los más pequeños detalles, sobre todo cuando no encuentras la respuesta ni en Stackoverflow, Google o  la documentación de los productos que estás usando.

En este caso particular me voy a referir a generar el APK final de una aplicación Android correctamente firmada para subir a Google Play.

Cuando compilamos nuestra app localmente usando Phonegap CLI, lo que normalmente hacemos es ir al directorio de nuestra aplicación y desde el mismo ejecutar en la terminal:

phonegap build android

Con esta simple línea se nos genera una versión debug de nuestro APK que lo podemos encontrar en path_a_nuestra_app/platforms/android/ant-build y cuyo nombre es NombreDeTuApp-debug.apk  

Mientras estemos en la etapa de desarrollo todo está bien pero....¿qué pasa cuando todo lo tenemos listo y queremos subir la aplicación a Google Play?

Pues sucede que esta versión del APK no nos sirve porque Google necesita una versión release correctamente asociada a un certificado de seguridad y, el generar este APK localmente usando la línea de comandos de Phonegap, es la tarea que quiero explicar aquí en pasos sencillos para que los que vengan atrás se encuentren más fácil todo el proceso.

Lo primero es crear el certificado de seguridad que Google requiere, esto se hace ejecutando en consola:

keytool -genkey -v -keystore nombre.keystore -alias tu_alias -keyalg RSA -keysize 2048 -validity 10000

Con este comando se crea el certificado con el nombre que le designes en nombre.keystore y el alias que le pongas en tu_alias.

Al ejecutar este comando el sistema te va a pedir que le asignes un password y varios datos personales que debes completar.

Luego debes dirigirte al directorio /platforms/android de tu aplicación y allí crear un archivo que se llame ant.properties y dentro del mismo especificar la ruta completa al certificado de seguridad que creamos en el paso anterior y el alias del mismo. Esto lo haces pegando dentro de ant.properties las siguientes líneas:

key.store=/path/al/certificado/nombre.keystore
key.alias=tu_alias

Luego ejecutas desde tu terminal:

ant release

Y allí mismo accedes al directorio /bin que está en el mismo  /platforms/android  

Una vez dentro de /bin ejecuta el comando:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore /path/al/certificado/nombre.keystore NombreDeTuApp-release-unsigned.apk tu_alias

Con esto debe haberse generado el APK final firmado y listo para subir a Google Play, el mismo lo puedes encontrar en el propio directorio /bin y se llama NombreDeTuApp-release.apk

Como punto final debes asegurarte, antes de compilar tu aplicación, que el archivo platforms/android/AndroidManifest.xml   tenga incluído android:debuggable="false" dentro del tag <application>.

 


Artículos Relacionados