Android - What Percentage of Android Devices Runs on x86 Architecture?
I ended up with this conclusion after searching a lot.
Useful info in Unity Stats.
ARMv7: 98.1%
Intel x86: 1.7%
However I was not satisfied so I verified it from many resources.
According to Android Documentation.
armeabi was deprecated in r16. Removed in r17. No hard float.
and
Historically the NDK supported 32-bit and 64-bit MIPS, but support was removed in NDK r17.
Summery after searching a lot
- mips (deprecated)
- mips64 (deprecated)
- armeabi (deprecated)
- armeabi-v7a (required — most popular architecture nowadays)
- arm64-v8a (required — newer version of armeabi-v7a)
- x86 (optional, very limited number of devices, like Asus Zenfone 2, Genymotion/ Android emulator)
- x86_64 (optional, very limited number of devices, like Asus Zenfone 2, Genymotion/ Android emulator)
I should also mention that ChromeBook are using Intel processors based x86
and x86_64
architecture. (Only add these architure when you support ChromeBook)
Conclusion
If you app supports armeabi-v7a
and arm64-v8a
architectures because they have around 99% of Android devices.
Important Suggestion
Do you worry about app size (you should), you should split your apk for multiple abi. Android studio and play store support uploading multiple apk, so that app has only 1 architecture ndk files.
So this will be much efficient to build multiple apk.
Important links
- What is ABI Management and CPU architecture
- Unity Stats CPU VENDORS
- Unity Stats on Android Hardware
- Split apk guide
- Find your device abi
- Largest mobile database
Since ultimately you're deciding whether x86 is still worthy of spending effort to support, I'm listing several facts about x86 for Android devices here:
- Intel had decided to discontinue the Atom line for phones/tablets.
- The last generation of handheld Atom - x3, x5 and x7 series - were at best equipped on lower-end Chinese Android tablets. Some come with phone/data capabilities (based on x3-C3230RK). Regardless, none made it onto mainstream devices, specifically phones.
- The last x86 Android device that's widely popular was ASUS' Zenfone 2, released in March 2015 - and even its subsequent variants shifted to Qualcomm's Snapdragon 410/615, partly due to the compatibility issues Android on x86 had back then.
- Spreadtrum has a partnership with Intel and just announced SC9861G-IA in March 2017 / SC9853I in August 2017. However, this has yet to come to fruition on consumer devices, and given Spreadtrum's focus on low-end devices for emerging markets, this SoC likely won't give much x86 on Android much significance.
EDIT: The first device utilizing the above Spreadtrum SoCs, the Leagoo T5c, is now on pre-sale. Leagoo is a small China-based firm, and the device mainly targets India, not to mention another variant of the same device (the T5) with a conventional SoC is sold at the same time, so it doesn't change the assumptions above that it will remain unpopular.
From Google Play Console (supporting a minimum of Android 4.1 and landscape screen):
- x86: 287 devices
- arm64-v8a: 3136 devices
- armeabi-v7a: 11716 devices