I have Android project (not ndk). In this project i'm linking my own native library myLib.so. I compiled my library for: armeabi-v7a and x86. So in jniLibs folder I have two folders with my lib: armeabi-v7a, x86.
When user runs my app on Samsung S6, i have next crash log:
> java.lang.UnsatisfiedLinkError:
> dalvik.system.PathClassLoader[DexPathList[[zip file
> "/data/app/com.mycompany.test-2/base.apk"],nativeLibraryDirectories=[/data/app/com.mycompany.test-2/lib/arm64,
> /vendor/lib64, /system/lib64]]]
> couldn't find "myLib.so" at java.lang.Runtime.loadLibrary(Runtime.java:366) at
> java.lang.System.loadLibrary(System.java:989)
Whats going on ? why 64 bit device not running with my lib ?
If you have only x86 and armeabi-v7a libraries, your app should automatically be installed in "32-bit mode".
Are you sure you don't have another library that would include .so files inside your APK's
lib/arm64-v8a
folder? In that case only the libs inside this folder will get installed (without yours).Edit: to include only x86 and armeabi-v7a libs, you can use abiFilters: