Saltar al contenido

Android: ¿cómo saber para qué arquitectura está destinado un APK?

Te damos la bienvenida a nuestro sitio web, en este sitio encontrarás la respuesta de lo que estás buscando.

Solución:

Una forma (bastante tosca) de ver para qué arquitectura están creadas las bibliotecas nativas de un APK es descomprimirlo (es solo un archivo zip) y echar un vistazo a la carpeta libs; si la aplicación contiene bibliotecas nativas, se dividirán en las siguientes subcarpetas dentro (con las bibliotecas compiladas dentro de estas):

  • armeabi: código compilado para la arquitectura ARMv5 anterior (32 bits, la compatibilidad con ARMv5 se eliminó del NDK de Android en r17)

  • armeabi-v7a: código compilado para la arquitectura ARMv7 (32 bits)

  • arm64-v8a: código compilado para la arquitectura ARMv8 (64 bits)

  • x86: código compilado para la arquitectura x86 (32 bits)

  • x86_64: código compilado la arquitectura x86-64 (64 bits)

  • mips: código compilado para la arquitectura MIPS32r1 y posterior (32 bits, se eliminó la compatibilidad con MIPS del NDK de Android en r17).

  • mips64: código compilado para la arquitectura MIPS64r6 (32 bits, se eliminó la compatibilidad con MIPS64 del NDK de Android en r17).

Consulte Paquete de aplicación de Android para obtener más información sobre la estructura de un APK y el origen de la lista anterior. Se puede encontrar una lista más completa (que incluye MIPS64), junto con información sobre cosas específicas de la arquitectura, en una versión archivada de la página de administración de ABI para desarrolladores de Android, capturada el 18 de abril de 2016.

Curiosamente, apuntar a una sola ABI (donde una aplicación incluye bibliotecas nativas diseñadas para una arquitectura) no significa necesariamente que la aplicación no se ejecutará en dispositivos que usan otras arquitecturas. ARMv8-a, por ejemplo, es compatible con ARM y ARMv7-a, y los dispositivos Android x86 de Intel contienen una capa de traducción patentada que permite que el código ARM se ejecute en dispositivos x86 (lo que permite que las aplicaciones solo ARM se ejecuten en plataformas x86). Puede encontrar una lista de las ABI que puede ejecutar un dispositivo Android en el ro.product.cpu.abilist propiedad, que se puede lograr en un shell (por ejemplo, a través de una aplicación de terminal en el dispositivo, o sobre adb usando adb shell) utilizando el getprop dominio: getprop ro.product.cpu.abilist.

valoraciones y reseñas

¡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 *