una studio pasar generate generar descargar debug crear como celular aplicacion abrir android android-studio apk

android - studio - Diferencia entre app-debug.apk y app-debug-unaligned.apk



generar apk debug android studio (2)

Respuesta corta:

app-debug-unaligned.apk unaligned.apk = APK firmado app-debug-unaligned.apk
app-debug.apk = APK firmado alineado (RAM optimizada usando zipalign)

Respuesta larga

Para comprender la diferencia, necesitamos conocer los siguientes puntos:

Proceso de firma de aplicaciones

  • generar una clave privada (keytool)
  • compilar para obtener el APK sin firmar -> APK sin firmar sin alinear
  • Firme la aplicación en modo de depuración / liberación con clave privada (jarsigner) -> APK firmado sin alinear
  • alinear el APK (zipalign) -> APK firmado alineado

Todo el proceso de firma se explica here .

¿Por qué necesitamos la app-debug-unaligned.apk intermedia app-debug-unaligned.apk ?

según los docs :

Precaución: zipalign solo debe realizarse después de que el archivo .apk se haya firmado con su clave privada. Si realiza zipalign antes de firmar, el procedimiento de firma deshará la alineación.

Cual es la ventaja? zipalign?

La ventaja es que los APK alineados están optimizados para el uso de RAM, por lo que consumirán menos RAM en los dispositivos. De los docs :

zipalign es una herramienta de alineación de archivos que proporciona una optimización importante para los archivos de aplicaciones de Android (.apk). .... El beneficio es una reducción en la cantidad de RAM consumida al ejecutar la aplicación.

En el estudio de Android con la variante de compilación configurada en modo "depuración", encontré dos salidas de apk

  • app-debug.apk
  • app-debug-unaligned.apk

¿Cuáles son las diferencias entre esos archivos?


El apk no alineado es solo un apk intermedio. Primero, se genera el apk no alineado. Luego, el apk no alineado se alinea y produce el apk alineado, que es app-debug.apk. Puedes leer más sobre esto here .