question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Emaultor error: `INSTALL_FAILED_NO_MATCHING_ABIS`

See original GitHub issue

The emulator is unable to install my APK due to the error: InstallException: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113. I do not see any logical reason why it is failing. Hopefully you can provide some insight.

I am using the following config in my workflow YML file:

- name: Instrumented tests (emulator)
   uses: reactivecircus/android-emulator-runner@v2
   with:
     api-level: 29
     # Runs: instrumented tests and creates coverage report for them (does not include unit tests)
     script: ./gradlew --build-cache --console=plain createDebugCoverageReport

Here is a snippet of the relevant stacktraces:

> Task :app:connectedDebugAndroidTest
Unable to install /Users/runner/work/space-app-android/space-app-android/app/build/outputs/apk/debug/app-debug.apk
com.android.ddmlib.InstallException: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
	at com.android.ddmlib.Device.installRemotePackage(Device.java:1168)
	at com.android.ddmlib.Device.installPackage(Device.java:998)
	at com.android.ddmlib.Device.installPackage(Device.java:974)
	at com.android.ddmlib.Device.installPackage(Device.java:963)
	at com.android.build.gradle.internal.testing.ConnectedDevice.installPackage(ConnectedDevice.java:126)
	at com.android.build.gradle.internal.testing.SimpleTestRunnable.run(SimpleTestRunnable.java:134)
	at com.android.ide.common.workers.ExecutorServiceAdapter$submit$submission$1.run(ExecutorServiceAdapter.kt:68)
	at java.util.concurrent.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1386)
	at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
	at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
	at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
	at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:175)

com.android.build.gradle.internal.testing.ConnectedDevice > runTests[test(AVD) - 10] FAILED 
	com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
		at com.android.build.gradle.internal.testing.ConnectedDevice.installPackage(ConnectedDevice.java:132)
[no message defined]
java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
	at java.util.concurrent.ForkJoinTask.get(ForkJoinTask.java:1006)

I have used this GH Action on other projects before without issue - so thanks for that 👍

I can provide more info if necessary.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:7 (3 by maintainers)

github_iconTop GitHub Comments

1reaction
ChristopherBullcommented, Oct 14, 2020

Running ./gradlew connectedAndroidTest also generates the same errors (connectedAndroidTest is a prerequisite of createDebugCoverageReport).

I do not have abiFilter in any of my **/build.gradle files.

As much as I appreciate your help (and if you think of anything, please comment), I’ll close this issue. This issue is not your responsibility as it exists outside of the GitHub Action - it is some combination of my project dependencies and Gradle (but not Android Studio!?).

Thanks for nudging me in the correct direction.

1reaction
ychescale9commented, Oct 14, 2020

Are you using NDK or any libraries with native dependencies?

This error usually happens when your app uses a native library that’s not available in the CPU architecture of the device. This action only supports the modern system images which only support x86 and x86_64 architectures.

Are you able to run the tests locally on an emulator? What’s the CPU/ABI and Target for the system image?

Read more comments on GitHub >

github_iconTop Results From Across the Web

INSTALL_FAILED_NO_MATCHI...
INSTALL_FAILED_NO_MATCHING_ABIS is when you are trying to install an app that has native libraries and it doesn't have a native library for your...
Read more >
9.0 pie - INSTALL_FAILED_NO_MATCHING_ABIS on Android 9
Latest Haxm is installed and enabled. But as Haxm is only for x86 the arm emulation should be done by the OS running...
Read more >
APK failed to install - google/android-emulator-m1-preview
The APK failed to install. Error: INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113.
Read more >
[SOLVED] Can't run on AVD. INSTALL FAILED NO ...
It seems that I should change CPU/ABI somewhere in project's configuration. How to do it ? Try adding x86 to your gradle.
Read more >
Getting the error INSTALL FAILED NO MATCHING ABIS
Getting the error INSTALL FAILED NO MATCHING ABIS - Failed to extract native libraries ; while performing android mobile testing.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found