25 abril, 2014

¿Qué son los archivos .APK en Android?

APK

De forma nativa las aplicaciones de Android (por lo general) están programados en Java, un lenguaje de programación multiplataforma que nos proporciona una extensión .JAR, que no es más que una especie de contenedor con el código fuente de la aplicación como tal, y precisamente un archivo con extensión .APK es eso, una variante de los .JAR.

De esta manera podemos decir que un archivo con etensión .APK al ser un contenedor (así como los .JAR) es posible ver su contenido y extraer los archivos que vienen dentro del paquete, por lo que con casi cualquier compresor como 7-ZIP o WinRar podemos extraer su contenido.

Como podemos ver en la imagen, un archvo .APK está compuesto básicamente por los siguientes ficheros:

  • AndroidManifest.xml
  • classes.dex
  • resources.arsc
  • res (carpeta)
  • META-INF (carpeta)

De forma rápida podemos decir que el fichero AndroidManifest.xml es para declarar actividades, servicios, permisos y otras opciones de la aplicación, mientras que en el fichero con extensión .dex es el lugar en donde podemos encontrar las clases y código en general del programa, pero obviamente hace falta un proceso de ingeniería inversa para poder hacerlo.

Actualmente existen aplicaciones como Dex2Jar para la tarea de “desensamblar” el fichero y dar con nuestra finalidad.

Article Tags

Related Posts