Saltar al contenido

Diferencia entre AAR, JAR, DEX, APK en Android

Solución:

JAR (archivo Java)

JAR es un formato de archivo de paquete diseñado para la distribución de aplicaciones Java en su plataforma. Contiene archivos de clase Java compilados + algunos archivos más como MANIFEST. Básicamente, es solo un archivo ZIP con algunas restricciones.

DEX (ejecutable de Dalvik)

DEX es un formato de archivo binario, por lo que está compilado. Podríamos decir que .dex archivo es para DVM (Dalvik Virtual Machine) algo así como .clase archivos para JVM.

El formato de archivo DEX realmente se genera a partir de archivos java CLASS mediante el compilador dex de Android SDK. Este compilador traduce el código de bytes de JVM a código de bytes de DVM y coloca todos los archivos de clase en un archivo dex.

APK (paquete de aplicaciones de Android)

APK es un formato de archivo diseñado para distribuir aplicaciones de Android en su plataforma. Tiene algunas similitudes con el formato JAR. Nuevamente, es simplemente un archivo ZIP, pero los archivos APK tienen una estructura específica predefinida. Por ejemplo, siempre debe contener un archivo llamado AndroidManifest.xml y muchos más. Además, este paquete agrega clases compiladas en formato dex.

AAR

AAR es la distribución binaria de un proyecto de biblioteca de Android. Tiene una estructura similar a APK.

Los JAR son como una colección de archivos .class (como en Java).

Eso es porque es es un JAR de Java.

AAR son archivos JAR + recursos

Correcto.

Pero, ¿cuál es su caso de uso? ¿Se utilizará para distribuir bibliotecas de desarrollo para Android?

Correcto.

APK parece ser similar a paquetes como .deb o .rpm. ¿Es la única forma de instalar aplicaciones en Android?

En general, sí.

¿Qué pasa con los archivos DEX?

Los archivos DEX contienen los códigos de bytes Dalvik compilados de forma cruzada que representan el código de la aplicación. Desarrolladores escribir Java, pero Android carreras Códigos de bytes de Dalvik. En el APK, encontrará un archivo DEX que representa esos códigos de bytes.

Más aún, al distribuir archivos .so (es decir, código nativo) para Android, ¿cuál es la mejor manera de hacerlo?

No sé a qué te refieres con “distribuir”.

Si te refieres a “distribuir una aplicación”, tu .so Los archivos estarán en el APK.

Si te refieres a “distribuir como una biblioteca para otros desarrolladores”, usa un AAR o simplemente un proyecto de Android en formato fuente.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *