El firmado del .apk es uno de los pasos que mas problemas suelen dar al subir una aplicación realizada en Unity a la Google Play Store. No es que sea un proceso complicado, pero tiene su trucos, y podemos equivocarnos muy fácilmente.
Un error muy común es intentar subir el APK con la firma de Debug que utiliza Unity por defecto. En este caso en la consola de Google nos aparecerá un mensaje parecido a:
You uploaded an APK that was signed in debug mode. You need to sign your APK in release mode. Learn more about signing.
Para solucionarlo tenemos que generar una Key nosotros mismos desde Unity y utilizarla para firmar nuestro APK.
Otro problema que nos encontramos desde hace poco, es que Google nos ofrece gestionar las claves para firmar los ejecutables que vamos a subir a la google Play Store. Como es una de las primeras opciones que ves al crear tu proyecto en la Google Play Store Console, mucha gente la selecciona. Es un error, por ahora este método no se lleva muy bien con Unity.
Si es la primera vez que firmas una App de Unity para subir y has seleccionado que sea Google quien te mantiene la clave, mejor que vuelva a empezar de nuevo el proyecto en la Google Play Console.
Al ir a subir la Release Google te preguntará si quieres que ellos gestionen las claves. NO! Con Unity, por ahora no funciona, así que tienes que pulsar OPT OUT y firmar desde el IDE de UNITY.
¿Cómo firmar nuestro .apk desde el IDE de UNITY?
En Player Settings, en el apartado Publishing Settings tenemos hacemos lo siguiente:
- Seleccionar la opción: Create a new keystore.
- Introducir un password, con un mínimo de seis posiciones en Keystore Password, y confirmarlo volviendo a introducirlo en Confirm keystore password.
- Pulsar el botón Browse Keystore, que nos pedirá donde queremos guardar el fichero de password que vamos a crear.
Indicamos el nombre del fichero que contendrá nuestra Key, y donde queremos guardarlo. Tenemos que guardarlo muy bien. Si lo perdemos no podremos subir los updates de nuestra aplicación.
Si creamos el ejecutable, Unity nos cambiará el check box a Use Existing Key Store, al lado del botón Browse Keystore nos mostrará el nombre del fichero de key usado.
Con esto todavía no tenemos la key generada, tenemos que seleccionar en el combo de Alias la opción Create New Key. Si no os aparece esta opción, revisad la consola, posiblemente tengáis un error, que corresponda con un password mal introducido. Unity no da muchas pistas.
En este cuadro de diálogo creamos la nueva key. Informamos los datos y pulsamos Create Key.
En el combo del alias ya nos aparecerá la key recientemente creada. La seleccionamos y indicamos el password que hemos puesto en el cuadro de diálogo de creación de la Key.
Con esto ya podemos crear el .APK firmado y subir nuestro juego a la Google Play Store!!!!
Y recordad: NO PERDÁIS EL FICHERO DE LA FIRMA!!!! NO PERDÁIS NI OLVIDEIS LA CONTRASEÑA DEL FICHERO DE FIRMAS!!!! NO PERDÁIS NI OLVIDEIS LA CONTRASEÑA DE LA FIRMA!!!!
[…] Una cosa muy importante: EL .APK TIENE QUE ESTAR FIRMADO. Cómo firmar un .APK lo tratamos en este post: Vamos a ver como se firma un ejecutable de Unity para subir a la Google Play Store. […]
Muy buen aporte, muchisimas gracias, pero tengo una duda, y si casualmente el primer punto ya lo hice sin querer (o mas bien sin saber que no debia) que hago?
Me refiero a que yo en :
Google te preguntará si quieres que ellos gestionen las claves.
aqui dices que digamos NO!! y yo di si….como lo soluciono.
Muchas gracias de antemano
un saludo
David, yo daria de alta de nuevo la aplicación 🙂