Native .so files not being included in APK at build time

Can someone guide me on the correct placement of where *.so files are supposed to be housed for a gradle/android project?

I have them in:


and the assets, java, and res folders are siblings to it in main as well but they don’t seem to be included when the APK is built causing an ‘UnsatisfiedLinkError’

They should be in subdirectories according to the correct ABI (ex. src/main/jniLibs/armeabi).

So I seem to have them in the correct location then, and I de-compiled the APK and I found the *.so files in the APK under /Lib but the app still seems to be having link issues. It gets past the System.loadLibrary("") and seems to load the library without an exception or error but calling a method from within the lib throws an UnsatisfiedLink exception.

Any suggestions are welcome, but I think this means I’m past any gradle related issues now.

This can be closed out…so the issue seems to be that the *.so files had references to a different pacakage name. I was only provided the *.so files and the not the C files to change this so I had to create a wrapper module that matched the exact package name and then everything worked.