使用AS学习NDK开发时,当DEMO中只用到一个SO文件,开发、调试均正常。
AS在开发NDK时是不需要手动编写Android.mk和Application.mk的,而通过配置build.gradle文件,可以自动在build目录下生成Android.mk,但是在配置build.gradle文件时,发现在ndk{...}中,只能配置一个moduleName,而这个moduleName正是编译后生成的SO文件名,请问现在需要加载多个SO文件时,这个build.gradle文件该如何配置?
build.gradle文件:
defaultConfig {
...
ndk {
moduleName "hello_jni"
ldLibs "log", "z", "m"
abiFilters "armeabi", "armeabi-v7a", "x86"
}
}
新人菜鸟在线等...
在 app/src/main/ 下新建 jniLibs ,全放到 这里就可以了。
或者直接编译生成到这里
同问 lz你解决了吗
ndk {
//moduleName "hello_jni"
ldLibs "log", "z", "m"
abiFilters "armeabi", "armeabi-v7a", "x86"
}
可以把moduleName注释掉。这时候编译之后,感觉是合并成了一个app.so 。然后都修改为System.loadLibrary("app");就可以了