2011-05-28 21 views
8

como saben apk es un archivo zip, que extrae y reemplaza algunos recursos, y cerró la cremallera de nuevo, cuando lo instalo, consigo esta excepciónjava.lang.SecurityException cuando instalar apk

java.lang. SecurityException: META-INF/MANIFEST.MF tiene una digest no válida

¿Alguna solución para este error?

+0

[aquí] (http://asantoso.wordpress.com/2009/09/15/how- to-build-android-application-package-apk-from-the-command-line-using-the-sdk-tools-continuous-integrated-using-cruisecontrol /) es el proceso de compilación APK. Puede ayudar. – sudmong

Respuesta

5

¿Lo ha firmado después de volverlo a empaquetar? Al cambiar cualquier cosa, se rompió la firma existente.

Si el paquete ya está instalado y vuelve a firmar el nuevo con una clave de firma diferente, también se negará a instalar.

26

Me encontré con este mismo error causado por haber instalado el JDK 7 en lugar de 6. Espero que ayude a otras personas con este error.

+22

Si se está firmando con jarsigner y tiene JDK 7, puede agregar las opciones "-digestalg SHA1 -sigalg MD5withRSA" al comando jarsigner y funcionará con JDK7. – gravitron

+1

Gracias! Esto es exactamente lo que pasó. – yuku

+0

gravitron - ¡Gracias por el comentario informativo y útil! Esta es una mejor respuesta ya que no tiene que degradar su SDK – MitziMeow

1

Mi problema era un alias de certificado incorrecto en el almacén de claves. Lo cambié a "CERT" y comenzó a funcionar. Utilicé este comando: keytool -changealias -alias "1" -destalias "CERT" -keystore android.jks

Cuestiones relacionadas