Bad JNI version returned Android 2.5.0

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view

Bad JNI version returned Android 2.5.0

I'm getting this error when I try to load joal on Android:

java.lang.UnsatisfiedLinkError: Bad JNI version returned from JNI_OnLoad in "/data/app/~~E76tSYqX0aoQ-wWp1fI3gQ==/com.ingenieur.ese.eseandroid-h88AVfuRCkQwI3dnYASMBA==/base.apk!/lib/arm64-v8a/": 65544
at java.lang.Runtime.load0(
at java.lang.System.load(
at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(
at com.jogamp.common.jvm.JNILibLoaderBase.access$000(
at com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(
at com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(
at com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(
at com.jogamp.common.os.DynamicLibraryBundle.loadLibraries(
at com.jogamp.common.os.DynamicLibraryBundle$
at com.jogamp.common.util.RunnableExecutor$CurrentThreadExecutor.invoke(
at com.jogamp.common.os.DynamicLibraryBundle.<init>(
at jogamp.openal.ALImpl$
at jogamp.openal.ALImpl$
at com.jogamp.common.util.SecurityUtil.doPrivileged(
at jogamp.openal.ALImpl.<clinit>(
at jogamp.openal.ALImpl.getALProcAddressTable(
at com.jogamp.openal.ALFactory.initialize(
at com.jogamp.openal.ALFactory.getALC(
at com.jogamp.openal.util.ALut.alutInit(

The next to is loading fine

The lib location is an odd place in the built apk from Android Studio, but the Native loading system finds these libraries from there happily.

Obviously the other lib files for jogl load fine and 3d is running well

The libjoal.dll loads up fine on Windows 10

This .so file comes from

The .so file is a different size (59,064) from the one in the 2.4.0 (54,824) and 2.3.2 (58,384) jars so I presume it's not a simple mis-packaging issue.

Is this a bug in the build or can I do some more to figure out the issue?

Reply | Threaded
Open this post in threaded view

Re: Bad JNI version returned Android 2.5.0

Sven Gothel
Hi Phil, thx for re-testing on Android!

Good that all works but JOAL :-)

Not sure what I have missed there .. but will check on it later these days.

Guess: I messed up the JNI version stuff in JOAL?
We have a build-in 'ON_LOAD' native function in JOGL and GlueGen,
perhaps I have forgotten to adjust things for JOAL?