技术教程 · 2023-09-28

跟着吉尔一起学 – v7a软件和v8a软件的区别

今天更新网站软件,发现有一个软件有 V7A 和 V8A 的两个版本。不懂。查之,学之,分享之。

学习心得:软件是根据硬件要求而开发的,硬件有区别软件也随之有区别。V7A和V8A的区别就是这种情况。

armeabi默认选项,32位,支持基于ARM*v5TE的设备,支持软浮点运算(不支持硬件辅助的浮点计算),支持所有ARM*设备,armeabi-v7a32位,支持基于ARM*v7的设备,支持硬件FPU指令,支持硬件浮点运算。

armeabi-v8a64位,支持基于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。

应用程序二进制接口(ApplicationBinaryInterface)定义了二进制文件(尤其是.so文件)如何运行在相应的系统平台上,从使用的指令集,内存对齐到可用的系统函数库。

在Android系统上,每一个CPU架构对应一个ABI:armeabi,armeabi-v7a,x86,mips,arm64- v8a,mips64,x86_64。

本站大部分下载链接正在逐步由原123网盘向百度网盘和城通网盘迁移。众所周知的原因,123网盘开始套路了收费了,考虑到广大网友的需求,吉尔选择了老牌网盘,虽说速度慢一点,重在稳定。
有啥意见,可在评论区留言。