80,471
社区成员




apply plugin: 'com.android.application'
android {
...
/*
关于 CPU 指令集
NDK 17 以上只支持 armeabi-v7a, arm64-v8a, x86, x86-64 四种 CPU 指令集架构
*/
// 配置 AS 工程中的 C/C++ 源文件的编译
// defaultConfig 内部的 externalNativeBuild 配置的是配置 AS 工程的 C/C++ 源文件编译参数
// defaultConfig 外部的 externalNativeBuild 配置的是 CMakeList.txt 或 Android.mk 构建脚本的路径
externalNativeBuild {
cmake {
cppFlags ""
//配置编译 C/C++ 源文件为哪几个 CPU 指令集的函数库 (arm , x86 等)
abiFilters "armeabi-v7a" , "arm64-v8a", "x86", "x86_64"
}
}
//配置 APK 打包 哪些动态库
// 示例 : 如在工程中编译的函数库 , 其提供了 arm, x86, mips 等指令集的动态库
// 那么为了控制打包后的应用大小, 可以选择性打包一些库 , 此处就是进行该配置
ndk{
// 打包生成的 APK 文件指挥包含 ARM 指令集的动态库
abiFilters "armeabi-v7a" , "arm64-v8a", "x86", "x86_64"
}
}
// 配置 NDK 的编译脚本路径
// 编译脚本有两种 ① CMakeList.txt ② Android.mk
// defaultConfig 内部的 externalNativeBuild 配置的是配置 AS 工程的 C/C++ 源文件编译参数
// defaultConfig 外部的 externalNativeBuild 配置的是 CMakeList.txt 或 Android.mk 构建脚本的路径
externalNativeBuild {
// 配置 CMake 构建脚本 CMakeLists.txt 脚本路径
// 使用该配置时 , 将 ndkBuild 配置注释掉
/*cmake {
path "src/main/cpp/CMakeLists.txt"
version "3.10.2"
}*/
// 配置 Android.mk 构建脚本路径
// 使用该配置时 , 将 cmake 配置注释掉
ndkBuild{
path "src/main/cpp/Android.mk"
}
}
...
}
...
————————————————
版权声明:本文为CSDN博主「韩曙亮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/shulianghan/article/details/104272170
"arm64-v8a", "x86_64" 这两个配置是 64 位的 ;
开发的时候只配置一个 armeabi-v7a 就可以 , 配置多了没啥用 , 导致 APK 体积变大