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.

๐Ÿ“Š Why do you need to know the ARM architecture?
Installing custom firmware
Running emulators (Termux, Anbox)
Optimizing applications
Solving compatibility errors
Just wondering

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 ARM and x86).
  • ๐ŸŽฎ 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:

  1. Open Settings โ†’ About the phone (or About the tablet).
  2. Find the section Hardware information, Software information or Processor model.
  3. Look for lines like Processor, Chipset or Architecture.

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-A means ARM64.

  • ๐Ÿ” AIDA64 (paid version with trial period)

    Look for the section CPU โ†’ Instruction set. This will indicate whether the processor ARMv7, ARMv8 or x86.

  • ๐Ÿ› ๏ธ 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:

  1. Install ADB and Fastboot on PC.
  2. Connect your phone via USB and enable debugging (Settings โ†’ For developers โ†’ USB debugging).
  3. 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)
  • x86 or x86_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 command getprop may 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:

  1. Install Termux from F-Droid (the version from Google Play is outdated).
  2. Run the application and enter:
uname -m

Possible results:

  • aarch64 โ†’ ARM64
  • armv7l โ†’ ARMv7
  • i686 โ†’ 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 โ†’ ARM64
  • ro.product.cpu.abi=armeabi-v7a โ†’ ARMv7
  • ro.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:

  1. Open Magisk Manager and go to the section Modules.
  2. Click on the gear icon (โš™๏ธ) in the upper right corner and select Logs.
  3. In the logs, look for lines with mention arch or cpu.

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:

  1. Find out the exact model of your device (Settings โ†’ About the phone โ†’ Model).
  2. 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).
  • Find information about the chipset and check with the architecture table (see section 2).
  • 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. Unless armeabi-v7a is 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).