Reputation: 8374
I'm trying unsuccessfully to include a pre-built library that uses native code in an Android app. I can't figure out what I'm doing wrong.
The contents of the finished .apk file look as follows. (I'm using NetBeans and Ant to build everything - I can include the relevant parts of the Ant script if anybody wants it.)
META-INF
assets
libs >
armeabi >
libandroidgl20.so
libgdx.so
res
AndroidManifest.xml
classes.dex
resources.arsc
In the application code, I have:
static {
System.loadLibrary("gdx");
System.loadLibrary("androidgl20");
}
But I keep getting the error: java.lang.UnsatisfiedLinkError: Library gdx not found
.
Am I putting the .so files in the right place? Do I need to do anything else to make sure the runtime is aware of them?
Upvotes: 3
Views: 3683
Reputation: 2547
Are you sure all the dependencies of 'gdx' are met ?
Is there any unimplemented native function in that library ?
Upvotes: 0
Reputation: 39807
System.load() requires the exact path (including full name) to the shared object. This is what you're doing wrong.
Use System.loadLibrary("gdx");
instead.
Upvotes: 2