android生成靜態庫的方法有兩種,一種是編輯android.mk文件,一種是編輯cmakelist文件。前一種沒做研究,因為用的ide是android studio,所以直接利用gradle調用cmakelist文件完成靜態庫的生成,就是第二種方式。現總結如下:
文件需求:
1.cpp頭文件源文件
2.cmakelists.txt文件
3.gen-gmath(生成靜態庫的module)下的build.gradle
4.hellojni(工程)下的settings.gradle
文件修改需求:
1.c++文件,不解釋
2.增加代碼 add_library(gmath STATIC gmath/src/gmath.c)
此處還應該對靜態庫生成的位置進行設置,但是初學,所以后續研究。
不設置路徑的情況下,是生成在module的externalNativeBuild文件下。
3.在module的gradle.build文件中的 defaultConfig大括號中增加
externalNativeBuild{
cmake{
arguments '-DANDROID_PLATFORM=android-14',
'-DANDROID_TOOLCHAIN=clang'
targets 'gmath'
}
}
在android大括號中增加
externalNativeBuild{
cmake{
path 'src/main/cpp/CMakeLists.txt'
}
}
4.在工程的settings.gradle中增加include ‘:gen-gmath’(module名)