目标:
1、新建android应用程序工程;
2、在上述android工程中添加jni目录;
3、利用javah生成jni头文件com_example_dynamiclibrary_DynamicLibrary.h;
4、编写com_example_dynamiclibrary_DynamicLibrary.cpp实现一个简单的加法:
JNIEXPORT jint JNICALL Java_com_example_dynamiclibrary_DynamicLibrary_getSum(JNIEnv *, jobject, jint a, jint b){
return getSumOf(a, b);//调用第三方的getSumOf()方法
}
5、在jni目录下新建lib目录用于放置第三方.so以及头文件.h
6、Android.mk编写
7、编译,能正在libs\armeabi目录中看到生成java工程调用的libcustomlib_caller.so以及第三方的libcustom_lib.so
8、运行
运行结果:报错大概信息是找不到libcustomlib_caller.so需要的动态库libcustom_lib.so
但是在/data/data/com.example.dynamiclibrary/lib下也有libcustomlib_caller.so以及第三方的libcustom_lib.so,但为什么就是找不到呢
第三方动态库libcustom_lib.so的.cpp内容:
int getSumOf(int a, int b)
{
return a + b;
}
整个工程截图:

请各位指点~~
------解决方案--------------------
对ndk还不是很熟悉,但是你这Android.mk里第一个module的new_custom_lib没有编译出来啊
------解决方案--------------------
你编译的so叫做customlib_caller,而你加载的时候用的名字是custom_lib?