UnsatisfiedLinkError on 64-bit Android when loading 32-bit JNI library (on LG Flex2) -


i've written android application calling 32-bit jni library. on galaxy note 4 (32-bit, snapdragon 805) works expected, on lg flex2 (64-bit, snapdragon 810) app works when passing parameter "--abi armeabi-v7a" adb (obviously).

however, when installing jar-file manually, android assumes 64-bit application, results in unsatisfiedlinkerror listed below.

this i've checked/tried: - there no 64-bit libraries present in whole apk - there single arch-specific directory inside apk (lib/armeabi-v7a)
- native libraries built "local_multilib := 32"

any idea why android insists on running application in 64-bit mode? i've read, android should automatically detect legacy 32-bit applications during installation when encountering 32-bit native shared libraries.

thank in advance, clemens

java.lang.unsatisfiedlinkerror: dalvik.system.pathclassloader[dexpathlist[[zip file "/data/app/at.ac.ait.modentity-2/base.apk"],nativelibrarydirectories=[/data/app/at.ac.ait.modentity-2/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "liblept.so" java.lang.runtime.loadlibrary(runtime.java:366) 

ps: please no comments suggesting deploy 64-bit libs, app executed in 32-bit mode.

the issue dependency pulling in native libraries (realm, librealm-jni.so) many different architectures.

so installer detected single 64-bit shared library , decided application 64-bit aware/safe.


Comments

Popular posts from this blog

php - Wordpress website dashboard page or post editor content is not showing but front end data is showing properly -

javascript - Get parameter of GET request -

javascript - Twitter Bootstrap - how to add some more margin between tooltip popup and element -