armabi armabi-v7a armabi-v8a 区别
armeabi默认选项,32位
支持基于 ARM* v5TE 的设备
支持软浮点运算(不支持硬件辅助的浮点计算)
支持所有 ARM* 设备
armeabi-v7a 32位
支持基于 ARM* v7 的设备
支持硬件 FPU 指令
支持硬件浮点运算
armeabi-v8a 64位
支持基于 ARM* v8 的设备
支持硬件 FPU 指令
支持硬件浮点运算
不同手机由于cpu的不同,使用不同的驱动。
ABI:指应用基于哪种指令集来进行编译,ABI总共有四种,分别是armeabi、armeabi-v7a、mips、x86,它们都是表示cpu的类型。
• 为了减小 apk 体积,只保留 armeabi 和 armeabi-v7a 两个文件夹,并保证这两个文件夹中 .so 数量一致
• 对只提供 armeabi 版本的第三方 .so,原样复制一份到 armeabi-v7a 文件夹
早期的Android系统几乎只支持ARMv5的CPU架构,现在支持7种!
Android系统目前支持以下七种不同的CPU架构:ARMv5,ARMv7 (从2010年起),x86 (从2011年起),MIPS (从2012年起),ARMv8,MIPS64和x86_64 (从2014年起),每一种都关联着一个相应的ABI。
应用程序二进制接口(Application Binary Interface)定义了二进制文件(尤其是.so文件)如何运行在相应的系统平台上,从使用的指令集,内存对齐到可用的系统函数库。在Android 系统上,每一个CPU架构对应一个ABI:armeabi,armeabi-v7a,x86,mips,arm64- v8a,mi

本文详细解析了ARM ABI的各种版本,包括armeabi、armeabi-v7a和arm64-v8a的区别,介绍了它们所支持的CPU架构特点,以及在Android系统中的应用情况。
3万+

被折叠的 条评论
为什么被折叠?



