Debido a la velocidad de emulación, los emuladores de Android suelen emular un dispositivo Android x86/x86_64. Los dispositivos Android reales son ARM/Arm64. Si la aplicación utiliza librerías nativas y no las proporciona para x86 o x86_64 no podrá ejecutar o instalar la aplicación en un emulador de este tipo. El emulador incluido en Android SDK/Android Studio incluye algunas imágenes (por ejemplo, "Android 12.0 API Level 31 Google Play | x86_64") que tienen una emulación ARM interna por lo que debería ser posible instalar una app sólo para arm o arm64.
Puede comprobar los tipos de CPU compatibles de un emulador ejecutando adb shell getprop ro.product.cpu.abilist
Valores posibles en la salida:
x86
-> se admiten aplicaciones x86 de 32 bits
x86_64
-> se admiten aplicaciones x86 de 64 bits
armeabi
-> se admiten aplicaciones de 32 bits para arm
armeabi-v7a
-> 32 bit arm apps are supported (today just an alias for armeabi
)
arm64-v8a
-> se admiten aplicaciones de 64 bits para arm
Por ejemplo x86,armeabi-v7a,armeabi
entonces esto significa que puede ejecutar código x86 de 32 bits y arm de 32 bits. Si su aplicación sólo está disponible como versión arm de 64 bits, entonces no funcionará.
La mejor manera de comprobar para qué plataformas está disponible una aplicación es consultar las descargas disponibles en https://apkmirror.com , https://apkpure.com o cualquier otro sitio web que ofrezca aplicaciones de instalación manual.