¿Qué porcentaje de dispositivos Android se ejecuta en arquitectura x86?

Esta pregunta puede ser redundante o un posible duplicado, pero estoy usando una biblioteca NDK que solo se ejecuta en dispositivos ARM. ¿Hay alguna manera de saber qué porcentaje de dispositivos Android puede admitir mi aplicación en función de la arquitectura de la CPU al igual que estas estadísticas en las versiones de la plataforma Android ?

Respuestas (3)

Dado que, en última instancia, está decidiendo si vale la pena dedicar un esfuerzo a x86 para brindar soporte, aquí enumero varios datos sobre x86 para dispositivos Android:

  • Intel había decidido descontinuar la línea Atom para teléfonos/tabletas .
  • La última generación de portátiles Atom (las series x3, x5 y x7) estaban mejor equipadas en tabletas Android chinas de gama baja. Algunos vienen con capacidades de teléfono/datos (basado en x3-C3230RK ). De todos modos, ninguno llegó a los dispositivos convencionales, específicamente a los teléfonos.
  • El último dispositivo Android x86 que fue muy popular fue el Zenfone 2 de ASUS, lanzado en marzo de 2015, e incluso sus variantes posteriores cambiaron a Snapdragon 410/615 de Qualcomm, en parte debido a los problemas de compatibilidad que tenía Android en x86 en ese entonces.
  • Spreadtrum tiene una asociación con Intel y acaba de anunciar SC9861G-IA en marzo de 2017 / SC9853I en agosto de 2017. Sin embargo, esto aún no se ha concretado en dispositivos de consumo y, dado el enfoque de Spreadtrum en dispositivos de gama baja para mercados emergentes, es probable que este SoC No le dará mucha importancia a mucho x86 en Android.

EDITAR: El primer dispositivo que utiliza los SoC Spreadtrum anteriores, el Leagoo T5c, ya está en preventa . Leagoo es una pequeña empresa con sede en China, y el dispositivo apunta principalmente a India, sin mencionar que otra variante del mismo dispositivo (el T5) con un SoC convencional se vende al mismo tiempo, por lo que no cambia las suposiciones anteriores. seguirá siendo impopular.

Básicamente, esto significa que no hay muchos dispositivos que no estén basados ​​en ARM. Por lo tanto, creo que mi aplicación admitirá una gran parte de la multitud de dispositivos Android. ¡Gracias!
@iBug Lo mismo aquí (en realidad tenía 2, vendí uno de ellos). Los problemas con los controladores hacen que Windows en ellos a veces sea difícil de usar, y mucho menos Android, diría yo.
@AndyYan Problema con el controlador? No hay problema si deshabilita la actualización automática del controlador en WU
@iBug Nah: algunos controladores, como el panel táctil y la pantalla, funcionan mal ocasionalmente y requieren una reinstalación. No causado por actualizaciones automáticas de controladores.
@AndyYan Para mí, el controlador de acelerómetro estándar (enviado) está bien, pero WU sigue actualizándolo a uno que no funciona, por lo que tuve que evitar que WU actualice mis controladores y lo verifico una vez algunos meses.
OTOH, es posible que desee compatibilidad con x86 y otros ajustes para ejecutar la aplicación en Chromebooks .
@AlexCohn Es cierto eso. No tomé en cuenta CB ya que tanto el sitio como el mío se enfocan en Android.
Probablemente no me expresé lo suficientemente claro: Chromebook no es Android, pero puede ejecutar aplicaciones de Android de forma nativa.

Llegué a esta conclusión después de buscar mucho.

Información útil en Unity Stats .

  • ARMv7: 98,1 %

  • Intel x86: 1,7 %

Sin embargo, no estaba satisfecho, así que lo verifiqué con muchos recursos.

Según la documentación de Android .

armeabi quedó en desuso en r16. Eliminado en r17. Sin flotador duro.

y

Históricamente, el NDK admitía MIPS de 32 y 64 bits, pero la compatibilidad se eliminó en NDK r17.

Summery después de buscar mucho

  • mips (obsoleto)
  • mips64 (obsoleto)
  • armeabi (en desuso)
  • armeabi-v7a ( requerido  — la arquitectura más popular hoy en día)
  • arm64-v8a ( requerido  — versión más nueva de armeabi-v7a)
  • x86 (opcional, número muy limitado de dispositivos, como Asus Zenfone 2, Genymotion/emulador de Android)
  • x86_64 (opcional, número muy limitado de dispositivos, como Asus Zenfone 2, Genymotion/emulador de Android)

También debo mencionar que ChromeBook está utilizando procesadores x86y x86_64arquitectura Intel. (Solo agregue esta arquitectura cuando sea compatible con ChromeBook)

Conclusión

Si su aplicación admite armeabi-v7ay arm64-v8aarquitecturas porque tienen alrededor del 99% de los dispositivos Android.

Sugerencia importante

¿Te preocupa el tamaño de la aplicación (deberías), debes dividir tu apk para múltiples abi. Android Studio y Play Store admiten la carga de múltiples apk , por lo que la aplicación tiene solo 1 archivo ndk de arquitectura.

Entonces esto será mucho más eficiente para construir múltiples apk.

Links importantes

Desde Google Play Console (compatible con un mínimo de Android 4.1 y pantalla horizontal):

¿Cómo encontraste esta información en Google Developer Console? No puedo encontrar el informe con la arquitectura del dispositivo.
¿Puede actualizar las estadísticas a las actuales (2022)?