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

25

Esta pregunta puede ser redundante o un posible duplicado, pero estoy usando una biblioteca NDK que se ejecuta solo 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 ?

sri
fuente
1
La opinión personal es que puedes ignorarlos: Intel dejó de producir Atom hace un tiempo, e incluso la última generación. de Atom no incluye una SKU para teléfonos; Entre los dispositivos x86 anteriores, solo Zenfone 2 ganó una tracción notable.
Andy Yan
Eso tiene mucho sentido, gracias! Publique esto como respuesta para que pueda aceptarlo :)
sri
El sitio desalienta la publicación de respuestas basadas en opiniones: solo enumeraré los hechos.
Andy Yan

Respuestas:

15

Dado que, en última instancia, está decidiendo si x86 sigue siendo digno de gastar esfuerzo para apoyar, enumero aquí varios datos sobre x86 para dispositivos Android:

  • Intel había decidido suspender la línea Atom para teléfonos / tabletas .
  • La última generación de Atom de mano, series x3, x5 y x7, estaban mejor equipadas en tabletas Android chinas de gama baja. Algunos vienen con capacidades de teléfono / datos (basadas 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 ampliamente popular fue el Zenfone 2 de ASUS, lanzado en marzo de 2015, e incluso sus variantes posteriores se trasladaron al 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, este SoC probablemente no le dará mucha importancia a x86 en Android.

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

Andy Yan
fuente
2
Esto esencialmente significa que no hay muchos dispositivos que no estén basados ​​en ARM. Por lo tanto, creo que mi aplicación admitirá una mayor parte de la multitud de dispositivos Android. ¡Gracias!
sri
@iBug Igual aquí (en realidad era dueño de 2, vendí uno de ellos). Los problemas con los controladores hacen que Windows en ellos sea a veces un dolor de usar, y mucho menos Android, diría.
Andy Yan
¿Problema de @AndyYan Driver? No hay problema si deshabilita la actualización automática del controlador en WU
iBug
@ iBug Nah: algunos controladores, como el panel táctil y la pantalla, ocasionalmente funcionan mal y requieren una reinstalación. No causado por actualizaciones automáticas de controladores.
Andy Yan
1
OTOH, es posible que desee soporte x86 y otros ajustes para ejecutar la aplicación en Chromebooks .
Alex Cohn el
23

Terminé con 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é de muchos recursos.

De acuerdo con la documentación de Android .

Armeabi fue desaprobado en r16. Eliminado en r17. Sin flotación dura.

y

Históricamente, el NDK soportaba MIPS de 32 y 64 bits, pero el soporte se eliminó en NDK r17.

Veraniego después de buscar mucho

  • mips (en desuso)
  • mips64 (en desuso)
  • 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, emulador Genymotion / Android)
  • x86_64 (opcional, número muy limitado de dispositivos, como Asus Zenfone 2, emulador Genymotion / Android)

También debería mencionar que ChromeBook están utilizando procesadores Intel basados x86y x86_64arquitectura. (Solo agregue estos archivos cuando admita ChromeBook)

Conclusión

Si las aplicaciones son compatibles armeabi-v7ay arm64-v8aarquitectónicas 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 solo tiene 1 archivos ndk de arquitectura.

Por lo tanto, esto será mucho más eficiente para construir múltiples apk.

Links importantes

Khemraj
fuente