ABI | 支持的指令集 | 备注 |
---|---|---|
armeabi-v7a | armeabi Thumb-2 VFPv3-D16 | 与 ARMv5/v6 设备不兼容。 |
arm64-v8a | AArch64 | |
x86 | x86 (IA-32) MMX SSE/2/3 SSSE3 | 不支持 MOVBE 或 SSE4。 |
x86_64 | x86-64 MMX SSE/2/3 SSSE3 SSE4.1、4.2 POPCNT |
sourceSets{main{jniLibs.srcDir 'libs'jni.srcDirs = [] //disable automatic ndk-build}}
sourceSets{main{jniLibs.srcDir 'src\main\jniLibs'//jniLibs.srcDir 'libs'// jni.srcDirs = [] //disable automatic ndk-build}}
在这里我介绍两种技术:
在defaultConfig
中加入如下配制
ndk {//设置支持的SO库架构(开发者可以根据需要,选择一个或多个平台的so)abiFilters "arm64-v8a", "armeabi-v7a"//,"armeabi", "x86","arm64-v8a","x86_64"}
这种情况下,仍然包含多个ABI
去掉defaultConfig
中配制,通过在productFlavors中指定abi
productFlavors {arm64_v8a {ndk {abiFilters "arm64-v8a"}}armeabi_v7a {ndk {abiFilters "armeabi-v7a"}}}
执行打包输出后的apk,只包含指定abi
APK split 允许我们自动生成多个APK文件,通过处理架构配制(请先去除ABI Filters配置)
splits {abi {enable trueuniversalApk falsereset()include 'armeabi-v7a'include 'arm64-v8a'//include 'x86'//include 'x86_64'}}
执行打包后的对比
本文发布于:2024-01-28 03:42:09,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17063845334527.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |