Android Studio使用CmakeLists生成so文件
2018-10-04 本文已影响26人
andev009
使用Android Studio配置默认生成的so只有一个,位置在build目录下,我们的目的是生成不同平台的so文件,为了让so文件方便给他人使用,将so文件放在jniLibs目录下。
1、生成不同平台so文件
defaultConfig {
applicationId "com.andev.newjni"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags ""
abiFilters 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'arm64-v8a'//不同平台so
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
2、so文件放在jniLibs目录下
在CmakeLists.txt文件里添加下面这句:
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/../jniLibs/${ANDROID_ABI})