No se puede subir el APK actualizado a Google Play debido a un certificado diferente

Estoy usando Android Studio para crear mis proyectos de Android y, cuando subo mi APK a Google Play, sigue mostrándome este error a pesar de usar el mismo almacén de claves que usé para versiones anteriores de mi aplicación:

Subida fallida

Subiste un APK que está firmado con un certificado diferente a tu APK anterior. Debe utilizar el mismo certificado.

Sus APKs existentes están firmados con el (los) certificado (s) con huella (s) digital (es):
[SHA1: 89: 2F: 11: FE: CE: D6: CC: DF: 65: E7: 76: 3E: DD: A7: 96: 4F: 84: DD: BA: 33]
Y el (los) certificado (s) utilizado (s) para firmar el APK que subió tiene huella (s) digital (es):
[SHA1: 20: 26: F4: C1: DF: 0F: 2B: D9: 46: 03: FF: AB: 07: B1: 28: 7B: 9C: 75: 44:

En primer lugar, es poco probable que Google Play esté equivocado aquí. ¿Está seguro de que no usó su clave de depuración por error?

Compruebe las claves de firma utilizadas

Debe comprobar de nuevo los certificados que contienen el APK antiguo y el nuevo APK, con los comandos:

jarsigner -verify -verbose:summary -certs old.apk jarsigner -verify -verbose:summary -certs new.apk 

Esto le muestra información sobre los archivos firmados en cada APK, como esto:

 sm 4642892 Thu Apr 17 10:57:44 CEST 2014 classes.dex (and 412 more) X.509, CN=My App, O=My Company, C=DE, L=Köln [certificate is valid from 11/11/13 12:12 to 29/03/41 12:12] [CertPath not validated: Path does not chain with any of the trust anchors] 

Si el nuevo APK dice X.509, CN=Android Debug, O=Android, C=US , entonces ha firmado el APK con su clave de depuración en lugar de la clave de liberación original.

Si las cadenas de identidad X.509 son diferentes, o las fechas de certificado son diferentes entre los dos APK, acaba de confirmar que no utilizó la misma clave de firma para ambos APK.

Puede ignorar cualquier mensaje "CertPath no validado"; No es relevante en este caso.

Buscar el almacén de claves original

Si la información del certificado es diferente, debe encontrar el almacén de claves original, es decir, el archivo con el primer valor SHA1 que Google Play le dijo.

Busca en todos los archivos de almacén de claves que encuentres hasta que tengas uno con la huella SHA1 correcta:

 keytool -list -keystore my-release.keystore 

No puedo encontrar el keystore original

Si no puede encontrar el almacén de claves original, nunca podrá publicar actualizaciones para esta aplicación en particular.

Android menciona esto explícitamente en la página Firmar su aplicación :

Advertencia: Guarde su almacén de claves y su clave privada en un lugar seguro y asegúrese de tener copias de seguridad seguras de ellos. Si publica una aplicación en Google Play y pierde la clave con la que firmó su aplicación, no podrá publicar ninguna actualización en su aplicación, ya que siempre debe firmar todas las versiones de su aplicación con la misma clave.

Después de la primera versión de un APK, todas las versiones posteriores deben estar firmadas con la misma clave exacta.

¿Puedo extraer la clave de firma original del APK original?

No. Esto no es posible. El APK sólo contiene información pública y no su información de clave privada.

¿Puedo migrar a una nueva clave de firma?

No. Incluso si encuentra el original, no puede firmar un APK con la clave A, luego firme la siguiente actualización con las dos teclas A y B, luego firme la siguiente actualización con sólo la tecla B.

Firmar un APK (o cualquier archivo JAR) con varias claves técnicamente posibles, pero Google Play no acepta APK con varias firmas.

¿Que puedo hacer?

Tendrá que crear su aplicación con un nuevo ID de aplicación (por ejemplo, cambiar de "com.example.myapp" a "com.example.myapp2") y crear un listado nuevo en Google Play.

Posiblemente también tendrás que cambiar tu código para que la gente pueda instalar la nueva aplicación, incluso si tienen la antigua aplicación instalada, por ejemplo, debes asegurarte de que no tienes contenido conflictivo.

Usted perderá su base de instalación existente, revisiones, etc, y tendrá que encontrar una manera de obtener a sus clientes existentes para desinstalar la antigua aplicación e instalar la nueva versión.

Una vez más, asegúrese de tener copias de seguridad del almacén de claves y la contraseña que utiliza para esta versión.

  • Error al subir la APK.
  • ¿Cómo firmar un APK con más de un certificado?
  • ¿Es posible depurar localmente la facturación en la aplicación de Google Play en Android Studio?
  • La aplicación de Android no se puede poner en la tienda de Amazon?
  • Cancelar la publicación y la aplicación en Google Play para probadores no beta solamente
  • Cómo habilitar la firma de la aplicación de Google Play
  • Actualizaciones automáticas google play
  • Perdí mi keystore para la aplicación subida en el mercado de android
  • Cómo publicar la aplicación de Google Play en un momento específico
  • ¿Por qué Google Play Store no muestra la razón de la indisponibilidad del dispositivo para la aplicación?
  • Consumir compras canceladas en la facturación en aplicaciones de Google Play
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.