válida una subido studio sale recuperar que programa porque play instalo instalada has google firmar firma encrypt cuando con cargaste apps app aplicacion android gradle apk

android - una - Error de firma de APK: no se pudo leer la clave del almacén de claves



programa de firma de apps de google play (6)

Estoy desarrollando aplicaciones para Android bajo intellij y gradle. y usando la siguiente forma para generar el archivo de almacén de claves:

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

luego usé el archivo keystore en build.gradle:

signingConfigs { robert { storePassword ''robert'' storeFile file(''/Users/bournewang/Documents/Project/android.keystore'') keyPassword ''robert'' keyAlias ''mike'' } }

cuando finalmente intenta generar un archivo apk firmado: ./gradlew assembleRelease

da el error:

Error de ejecución para la tarea '': Myexample: packageRelease''.

Error al leer la clave del almacén de claves


Consulte primero su archivo de almacén de claves, en su ejemplo, creará un archivo con el nombre my-release-key.keystore. Si es correcto y realmente está presente en la carpeta Users/bournewang/Documents/Project check alias, en su ejemplo es -alias alias_name , pero en la configuración especificó alias mike


En mi caso, al copiar el texto de otra fuente, de alguna manera incluía el espacio al final de la entrada del portapapeles. De esa forma, la contraseña clave tenía un espacio al final.


La eliminación double-quotes resolvió mi problema, ahora es:

DEBUG_STORE_PASSWORD=androiddebug DEBUG_KEY_ALIAS=androiddebug DEBUG_KEY_PASSWORD=androiddebug


Lo más probable es que su alias clave no exista para su archivo de almacén de claves.

Esta answer debería solucionar su problema de firma;)


Para averiguar qué ocurre, puede usar el comando signingReport de signingReport .

En mac:

./gradlew signingReport

En Windows:

gradlew signingReport


Podría ser cualquiera de los parámetros, no solo el nombre de archivo o el alias, para mí era la contraseña clave.