因为项目只支持armeabi,而有些第三方库不支持armeabi,所以在编译时将v7、v8 so文件copy到armeabi。
直接上代码build.gradle中添加如下代码
afterEvaluate { project ->
android.applicationVariants.each { variant ->
opyV7Lib(variant, project)
}
}
// 将armeabi-v7a xx.so 拷贝到 armeabi
def copyV7Lib(variant, project) {
println("variant name=${variant.name}, buildType=${variant.buildType.name}")
//取出变体名,将第一个字符变为大写,用于拼接task名称,例如debug->Debug,task名称 merge+Debug+NativeLibs
def buildVariantName = variant.name.substring(0, 1).toUpperCase() + variant.name.substring(1)
def taskName = "copyNativeLib" + buildVariantName
println("taskName = ${taskName}, taskVariantName = ${buildVariantName}")
def nativeLibDir = project.buildDir.getAbsolutePath() + "/intermediates/merged_native_libs/${variant.name}/out/lib"
def armeabiV7Dir = na