INSTALL_FAILED_NO_MATCHING_ABIS 🤖 Android

INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries

The APK contains native (.so) libraries only for CPU architectures the device doesn’t support — e.g. x86 emulator with arm-only libraries or vice versa.

Seen on: Android

Meaning

Apps with NDK/native dependencies ship per-ABI libraries (arm64-v8a, armeabi-v7a, x86_64). abiFilters or a dependency built for limited ABIs leaves the target device out. Apple Silicon Macs need arm64 emulator images.

Common causes

  • abiFilters excludes the device’s ABI
  • Native dependency only built for ARM (or x86)
  • Running an x86_64 emulator image with ARM-only libs
  • Split APK built for another device

⚡ Quick fix

  1. Use an emulator image matching your libraries (arm64 on Apple Silicon)
  2. Add the missing ABI to abiFilters or use a dependency that ships it
  3. Build universal APK/AAB

Detailed fix by platform

Gradle

  1. kotlin
    android {
      defaultConfig {
        ndk { abiFilters += listOf("arm64-v8a", "armeabi-v7a", "x86_64") }
      }
    }

How to diagnose

  1. Device ABI — adb shell getprop ro.product.cpu.abilist
  2. APK — unzip -l app.apk | grep lib/

🔧 Still not fixed?

Many errors look alike. If the steps above didn’t solve it, one of these is probably what you’re facing:

🧠 Still stuck? Analyze your error

Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.