Subiendo nuestro App a la tienda de Google y Apple
Android
Primero se debe crear una llave privada ejecutando lo siguiente en la consola
keytool -genkey -v -keystore mi-llave.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
Este comando solicita una clave que debes guardar muy bien ya que esta misma llave se debe utilizar cada vez que se actualice el app.
Una vez obtenido nuesta llave.keystore compilamos nuestra aplicación en modo release ejecutando el siguiente código
cordova build android --release
Este comando genera un archivo con la extensión APK y la ubicación se muestra en la consola cuando se ejecuta el comando.
Una vez obtenido nuestro apk sin firmar debemos firmar el app ejecutando lo siguiente:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore mi-llave.keystore mi-app.apk alias_name
Para firmar el app con nuestra llave debemos poner la contraseña que utilizamos para generar nuestro llave privada.
Para verificar que nuestra aplicación está correctamente firmada debemos ejecutar lo siguiente:
jarsigner -verify -verbose -certs mi-app.apk
Cuando se ejecuta este comando usualmente sale un warning lo cual es normal y no perjudica el proceso de subirlo a la tienda, solo se debe verificar que no den errores.
Y por último para una optimización adecuada de nuestro app se ejecuta el siguiente comando:
zipalign -v 4 mi-app-unaligned.apk mi-app.apk
iOS
En este video de 14 minutos se explica detalladamente todos los pasos que se deben hacer para subir un app al AppStore