Android ABI
1.简介
不同的 Android 设备使用不同的 CPU,而不同的 CPU 支持不同的指令集。
CPU 与指令集的每种组合都有专属的应用二进制接口 (ABI)
2.支持的 ABI
2.1 armeabi-v7a
此 ABI 适用于基于 32 位 ARM 的 CPU。armeabi、Thumb-2、VFPv3-D16
2.2 arm64-v8a
此 ABI 适用于基于 ARMv8-A 的 CPU,支持 64 位 AArch64 架构。它包含高级 SIMD (Neon) 架构扩展指令集。
2.3 x86
此 ABI 适用于支持通常称为“x86”、“i386”或“IA-32”的指令集的 CPU。
2.4 x86_64
此 ABI 适用于支持通常称为“x86-64”的指令集的 CPU。
3.为特定 ABI 生成代码
Gradle
复制代码
ndk-build
复制代码
CMake
复制代码
构建系统的默认行为是将每个 ABI 的二进制文件包括在单个 APK(也称为胖 APK)内。
在安装时,软件包管理器只解压缩最适合目标设备的机器代码。
版权声明: 本文为 InfoQ 作者【Changing Lin】的原创文章。
原文链接:【http://xie.infoq.cn/article/5c5998ee647fe51b44ef264a5】。文章转载请联系作者。
评论