Abrimos una consola de comandos (cmd)

Vamos a la carpeta raiz del proyecto (donde tenemos el archivo config.xml)

Compilamos el proyecto

cordova build --release android

Si nos da BUILD SUCCESSFUL, tendremos un apk generado en la carpeta proyecto→platform→android→ant-build. Por defecto llama al archvio generado MainActivity-release-unsigned.apk

Para poder instalar en un dispositivo físico hace falta firmar la aplicación.

Una vez que tenemos generada la apk en modo release, debemos crear un archivo de firma de desarrollador XXXXX.keystore

Cómo generar el archivo de firmas

Para ello, vamos a un directorio donde queramos guardar el archivo e introducimos lo siguiente:

keytool -genkey -v -keystore <keystoreName>.keystore -alias <Keystore AliasName> -keyalg <Key algorithm> -keysize <Key size> -validity <Key Validity in Days>

e.j.: keytool -genkey -v -keystore keyMerkatu.keystore -alias aliasMerkatu -keyalg RSA -keysize 2048 -validity 10000

Nos pedirá introducir (optativos):

  1. Contraseña del almacen de claves (el keystore).
  2. Nombre y apellido.
  3. Unidad de Organización.
  4. Organización.
  5. Ciudad o localidad.
  6. Estado o provincia.
  7. Código de país.

Es corecto? (si/no)

Si es correcto nos pedirá contraseña para el alias creado

Cómo usar el archivo de firmas

Para usar el archivo de firmas, vamos a la carpeta donde se ha generado la .apk (ant-build) o introducimos la ruta en el nombre, y escribimos:

jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore NAME-mobileapps.keystore Example-release-unsigned.apk xxxxxmobileapps

e.j.: jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore keyMerkatu.keystore MainActivity-release-unsigned.apk aliasMerkatu

Esto nos firma la apk.

Por ultimo es muy recomendable usar el programa zipalign para optimizar el archivo compilado

C:\ruta\sdk\build-tools\xxx\zipalign -v 4 Example-release-unsigned.apk nombre-a-elegir.apk 

El zipalign está dentro del sdk, en mi caso: C:\rutaAndroid\sdk\build-tools\21.1.2\zipalign.

Lo más cómodo y rápido que he encontrado yo, es subir la apk a Google Drive desde el PC, y después acceder al Drive desde nuetro movil. Al seleccionar el archivo, el S.O nos consulta si queremos instalar la aplicación.