Processor architecture is a key parameter that determines application compatibility, performance, and even the ability to install custom firmware on your Android device. If you've ever encountered errors like INSTALL_FAILED_CPU_ABI_INCOMPATIBLE when installing an APK or tried to run an emulator Termux, then you know how important it is to know what architecture ARM is used in your smartphone.
But how to find out? Unlike the Android version or device model, information about the processor architecture is hidden deep in the system. In this article we will look at 7 working methods โfrom simple (via standard settings) to advanced (using ADB i Termux). You will learn how to distinguish ARMv7 from ARM64why some devices use x86, and what to do if applications detect the architecture incorrectly.
Important: processor architecture and OS bitness (32-bit or 64-bit) is not the same thing. We'll explain the difference and show you how to check both options. And if you plan to install custom software or optimize the operation of the device, this information will become your navigation map.
1. What is ARM, ARMv7, ARM64 and x86 in Android?
Before moving on to practice, let's understand the theory. ARM (Advanced RISC Machine) is a family of processor architectures that are used in 99% of mobile devices. But within this family there are several key branches:
- ๐ฑ ARMv7 (32-bit) - outdated architecture, which is still found in budget smartphones. Supports only 32-bit applications.
- ๐ ARM64 (AArch64, 64-bit) is a modern standard for flagships and most devices after 2015. Compatible with 32-bit and 64-bit applications. ARM64 (AArch64, 64-bit) is the architecture used by some tablets (for example, ARM64 or Android emulators on PCs). Rarely found in smartphones.
- ๐ฅ๏ธ x86 / x86_64 - the architecture that some tablets use (for example, Lenovo Yoga or ASUS ZenPad) and Android emulators on PC. Rarely found in smartphones.
Why is this important? For example, if you try to install an application compiled only for ARM64on a device with ARMv7, you will receive an error. Or vice versa: a 32-bit application will run on a 64-bit processor, but may slow down due to emulation.
The architecture also affects:
- ๐ง The ability to install custom firmware (for example, LineageOS releases assemblies separately for
ARMandx86). - ๐ฎ Performance in emulators (for example, Dolphin Emulator works better on
ARM64). - ๐ ๏ธ Compatibility with tools like Magisk or Xposed (some modules are bound to the architecture).
โ ๏ธ Attention: Some manufacturers (for example, Huawei or MediaTek) use their own modifications of ARM architectures. This may affect compatibility with unofficial software.
2 Method 1: Checking through Android settings (without. applications)
The easiest method is to look at the information in the standard settings. Unfortunately, not all manufacturers display the processor architecture in the interface, but itโs worth a try.
Instructions for most devices:
- Open
Settings โ About the phone(orAbout the tablet). - Find the section
Hardware information,Software informationorProcessor model. - Look for lines like
Processor,ChipsetorArchitecture.
Examples of what you can see:
- ๐น
Qualcomm Snapdragon 888 (ARMv8)โ this ARM64. - ๐น
MediaTek Helio G35 (ARMv7)โ this ARMv7. - ๐น
Intel Atom x5-Z8300โ this x86.
If the settings do not explicitly indicate the architecture, pay attention to the processor model and check it with the table below:
| Manufacturer | Processor model | Architecture |
|---|---|---|
| Qualcomm | Snapdragon 4xx/6xx/7xx/8xx (after 2015) | ARM64 |
| MediaTek | Helio Gxx, Dimensity | ARM64 |
| Samsung | Exynos 9xxx, 8xxx | ARM64 |
| Intel | Atom x3/x5/x7 | x86 or x86_64 |
| Huawei | Kirin 6xx/7xx/9xx | ARM64 (with proprietary modifications) |
โ ๏ธ Attention: On some devices (especially from Xiaomi or Realme) the "About phone" section may hide technical details. In this case, proceed to the following methods.
3 Method 2: Applications for determining the architecture
If standard settings do not help, use specialized applications. They will not only show the architecture, but also provide additional information about the processor, cores and supported instructions.
Top 3 applications for checking:
- ๐ CPU-Z (free, without unnecessary water in the main ones). sections)
Shows the architecture in the section
SoC โ Architecture. For example,ARMv8-Ameans ARM64. - ๐ AIDA64 (paid version with trial period)
Look for the section
CPU โ Instruction set. This will indicate whether the processorARMv7,ARMv8orx86. - ๐ ๏ธ DevCheck (free, minimalistic interface)
Displays the architecture in the block
Hardware โ CPU Architecture.
Example of display in CPU-Z:
Model: Qualcomm Snapdragon 730G
Architecture: ARMv8-A (64-bit)
Cores: 2x Kryo 470 Gold + 6x Kryo 470 Silver
If the application shows ARMv7, but your device is new (released after 2017), it may be running in compatibility mode. This often happens on devices with ARM64, but with 32-bit firmware.
Find the "CPU" or "Processor" section
Pay attention to the lines "Architecture" or "Instruction set"
Check the processor model with the official specifications
Check the OS bitness (32-bit or 64-bit)
-->
4. Method 3: Through ADB (for advanced users)
If you have a computer and know how to use ADB (Android Debug Bridge), this method will give the most accurate information. It works even on devices with a locked bootloader.
Instructions:
- Install ADB and Fastboot on PC.
- Connect your phone via USB and enable debugging (
Settings โ For developers โ USB debugging). - Open the command line (or Terminal on macOS/Linux) and enter:
adb shell getprop ro.product.cpu.abi
Possible answers:
armeabi-v7aโ ARMv7 (32-bit)arm64-v8aโ ARM64 (64-bit)x86orx86_64โ architecture Intel/AMD
For more detailed information, use the command:
adb shell cat /proc/cpuinfo
In the output, look for the line CPU architecture. For example:
Processor : AArch64 Processor rev 4 (aarch64)
Here aarch64 confirms that the device supports ARM64.
โ ๏ธ Attention: On some devices with custom firmware, the commandgetpropmay return incorrect data. In this case, trust the output from/proc/cpuinfo.
5. Method 4: Via Termux (no PC)
If you do not have a computer, but have access to Termux (Linux emulator for Android), you can find out the architecture directly on your phone.
Instructions:
- Install Termux from F-Droid (the version from Google Play is outdated).
- Run the application and enter:
uname -m
Possible results:
aarch64โ ARM64armv7lโ ARMv7i686โ x86 (32-bit). data-i="169">, which also provides access to Linux commands.x86_64โ x86 (64-bit)
For more information use:
cat /proc/cpuinfo | grep -i "model name"
Sample output for Snapdragon 865:
Model name: ARMv8 Processor rev 2 (v8l)
If Termux not installed, you can use an alternative - the application AnLinux, which also provides access to Linux commands.
If the command uname -m returns i686, but you are sure that you have an ARM processor, you may be working in an emulated environment (for example, through QEMU or Anbox).
6. Method 5: Analysis of the build.prop file
The file build.prop contains all low-level information about the firmware, including processor data. It can be viewed either through ADBor using a file manager with rights root.
Instructions via ADB:
adb shell cat /system/build.prop | grep -i "cpu"
Look for lines like:
ro.product.cpu.abi=arm64-v8aโ ARM64ro.product.cpu.abi=armeabi-v7aโ ARMv7ro.product.cpu.abi=x86โ x86
If you have root accessopen the file /system/build.prop in any text editor (for example, MiXplorer or Root Explorer) and find the same lines.
Pay attention to the parameter ro.arch โit may contain value arm, arm64 or x86.
โ ๏ธ Attention: Editing build.prop without knowledge can lead to bootloop (load loop). Do not change the file if you are not sure of your actions!
7. Method 6: Through Magisk (for devices with root)
If your smartphone is rooted and installed Magisk, you can find out the architecture through its modules or log files.
Instructions:
- Open Magisk Manager and go to the section
Modules. - Click on the gear icon (โ๏ธ) in the upper right corner and select
Logs. - In the logs, look for lines with mention
archorcpu.
Alternatively, install the module Magisk called CPU Info (available in the repository Magisk Module Repo). After activation, it will add detailed information about the processor to the system settings.
You can also use the command in Termux with rights root:
su -c "getprop ro.product.cpu.abi"
This will give the same result as ADB, but without connecting to a PC.
8. Method 7: Online services by IMEI or device model
If for some reason you cannot use the previous methods, you can determine the architecture by the device model or its IMEI.
Instructions:
- Find out the exact model of your device (
Settings โ About the phone โ Model). - Go to one of the services:
- ๐ GSMArena (enter the model in the search and open the tab
Platform). - ๐ง Device Specs (section
Chipset). - ๐ฑ Kimov (for devices Samsung i Xiaomi).
- ๐ GSMArena (enter the model in the search and open the tab
Example for Samsung Galaxy S21:
- Chipset: Exynos 2100 or Snapdragon 888.
- Architecture: ARM64 (both chipsets are built on
ARMv8.2-A).
โ ๏ธ Attention: Online services may contain outdated data, especially for little-known brands. Always check the information with the manufacturer's official website.
If the online service indicates that your The device supports ARM64, but applications detect it as ARMv7, most likely you have 32-bit firmware installed. This is a common practice for budget devices, even with 64-bit processors.
FAQ: Frequently asked questions about ARM architecture in Android
Is it possible to change the processor architecture from ARMv7 to ARMv7? ARM64?
No, the processor architecture is a hardware characteristic that cannot be changed in software. However, you can install 64-bit firmware on a device with a ARM64processor, if it was originally 32-bit.
Why do some applications not work on mine? ARM64 device?
This may be due to:
- ๐น Lack of a 64-bit version of the application (the developer builds an APK only under
ARMv7). - ๐น Blocking by region or device model.
- ๐น Using an unofficial firmware with incorrect libraries.
Solution: try installing armeabi-v7a APK version manually or use a compatibility emulator (for example, LibHoudini for x86).
How can I find out what OS bit is installed on my Android?
OS bitness and processor architecture are two different things. To check OS bitness, use:
- ๐ฑ Application AIDA64 (section
System โ OS bitness). - ๐ป Command ADB:
adb shell getprop ro.product.cpu.abilist.
If the output contains
arm64-v8a, the OS is 64-bit. Unlessarmeabi-v7ais 32-bit.
Is it possible to run an ARM application on an x86 device?
Yes, but with limitations:
- ๐น On
x86devices (for example, tablets Lenovo) an emulator is used LibHoudinithat translates ARM instructions into x86. - ๐น Performance will be lower than on a native ARM device.
- ๐น Some applications (for example, games with anti-cheats) may not work due to architecture verification.
For better compatibility, look for APKs compiled for x86 (for example, on APKCombo).
Why is my new device detected as ARMv7 if it has a Snapdragon 8xx?
This is a typical situation for devices with a 64-bit processor, but 32-bit firmware Manufacturers sometimes save money by releasing 32-bit OS builds for budget models, even if the hardware supports it. ARM64.
Solution:
- ๐น Install custom firmware (for example, LineageOS) with 64-bit support.
- ๐น Update the device to the latest official firmware (sometimes manufacturers add 64-bit support in updates).