Skip to main content
EN

Home / Blog / Installation

Which APK architecture? arm64-v8a, armeabi-v7a and universal explained

Which APK architecture? arm64-v8a, armeabi-v7a and universal explained

On the download page you will see the same app listed several times:

  • xxx-arm64-v8a.apk
  • xxx-armeabi-v7a.apk
  • xxx-universal.apk

They are functionally identical. The only difference is which CPU they were compiled for. Pick wrong and the app either will not install or runs with a penalty.

What the three are

The differencearm64-v8a64-bit Aessentially every phone since 2015best performance, moderate sizefirst choicearmeabi-v7a32-bit Aolder or low-end devicesruns on 64-bit phones too, with a penaltyuniversalevery arinstalls anywherelargest fileuse when unsure
Identical features, different compilation targets

arm64-v8a: the mainstream. Phones and tablets released after 2015 are essentially all this.

armeabi-v7a: a relic of the 32-bit era. Only very old or a few low-end devices still use it.

universal: both sets of code in one package, roughly 1.8× the size of a single-architecture build, but it runs anywhere.

Finding out what your phone is

Method 1: system settings (fastest, not always available)

Settings → About phone → Processor / Chip

If you see "64-bit" anywhere, it is arm64-v8a.

Plenty of manufacturer skins hide this, in which case use one of the methods below.

Method 2: a device info app

Install something like CPU-Z or Device Info and look for Instruction sets / ABI under the SOC or System tab:

  • Lists arm64-v8a → take arm64-v8a
  • Lists only armeabi-v7a → take armeabi-v7a

Method 3: judge from the chip model (no installs)

Common chips and their architectureSnapdragon 6xx Dimensity, entire range — arm64-v8aKirin 9xx Exynos 7xxx and above — arm64-v8aOlder MediaTek MT65xx (pre-2014) — armeabi-v7a
Simple heuristic: if you bought the phone after 2016, it is arm64-v8a

Method 4: just take the universal build

Do not want to check? Download universal.apk. It costs you a few dozen MB of storage and behaves identically.

What happens if you pick wrong

Three ways to get it wrong1armeabi-v7a on a 64-bit phoneit installs and runs, but in compatibility mode: slightly higher memory use, slightly lower performance. In daily use you will not notice2arm64-v8a on a 32-bit phoneit will not install — "App not installed" or "There was a problem parsing the package"3universal on anythingworks fine, the package and storage footprint are just larger
The worst outcome is that it does not install — nothing gets damaged

So the practical advice is: try arm64-v8a first, fall back to universal if it will not install, and only use armeabi-v7a if you have confirmed you have an old device.

What we host for each app

Softwarearm64-v8aarmeabi-v7auniversal
FlClash
Clash Meta for Android
v2rayNG
NekoBox

v2rayNG and NekoBox are arm64-v8a only here, because the number of people still running 32-bit Android is now very small.

Problems when installing an APK

"Install blocked — unknown sources"

Since Android 8.0 this permission is granted per source app:

Granting itTap Settings in the dialogit jumps straight thereFind "Allow from this source"grant it to your browser or file managerGo back and tap install againit works this timeRevoke it afterwardsreduces the chance of a bad install later

"There was a problem parsing the package"

Three possibilities:

  1. Architecture mismatch — a 32-bit phone with an arm64 build; use armeabi-v7a or universal
  2. Incomplete download — download again, and avoid tools that resume partial transfers
  3. Android version too low — the app requires a newer Android than you have

"App not installed"

Usually a signature conflict: you previously installed an app with the same package name from a different source, and the signatures do not match.

Fix: uninstall the old version first. Note that uninstalling clears the configuration, so save your subscription URL beforehand.

It installs but crashes on launch

Confirm the architecture first. If you are on the universal build and it still crashes, it may be your Android version or WebView — try updating the system "Android System WebView" component.

One thing worth saying: do not download APKs from random search results

Android APKs can be repackaged. Someone can add code to the original, re-sign it with their own key, and the result looks identical.

Proxy apps are particularly sensitive, since they see all of your network traffic. So:

If you want to verify a file yourself, see how to check what you downloaded.

In short

One linePhone bought after 2016arm64-v8aNot sureuniversalConfirmed old devicearmeabi-v7a

Architecture is a forgiving decision — the worst case is that it will not install and you try another. Where you download from is the part that deserves care.

Related: choosing between the four Android clients and verifying downloads.