Android系统目前支持CPU架构都有哪些

Android系统目前支持CPU架构都有哪些

7种CPU架构armeabi (ARM v5):32位cpu 属于 第5代、第6代早期的ARM处理器 armeabi-v7a (ARM v7):32位cpu 属于 第7代的 ARM 处理器 从2010年起 arm64-v8a (ARM v8): 第8代、64位ARM处理器 x86 : 32位处理器 从2011年起 x86_64 : 64位处理器 从2014年起 MIPS : 32位处理器 从2012年起 MIPS64 : 64位处理器 从2014年起 兼容和文件读取顺序arm64-v8a是可以向下兼容的,其下有armeabi-v7a,armeabi

armeabi-v7a向下兼容armeabi

对于一个cpu是arm64-v8a架构的手机,它运行app时,进入jnilibs去读取库文件时,先看有没有arm64-v8a文件夹:

如果没有该文件夹,去找armeabi-v7a文件夹,如果没有,再去找armeabi文件夹,如果连这个文件夹也没有,就抛出异常

如果有arm64-v8a文件夹,那么就去找特定名称的.so文件,注意:如果没有找到,不会再往下(armeabi-v7a文件夹)找了,而是直接抛出异常

由于向下兼容的特性 高版本的设备可以使用低版本armeabi的so库, 但是低版本不支持高版本库, 这也就是为什么很多开发商包括微信只保留了armeabi的so库,从而兼容市面上所有的设备

只保留armeabi存在的问题所有的x86/x86_64/armeabi-v7a/arm64-v8a设备都支持armeabi架构的.so文件,因此似乎移除其他ABIs的.so文件是一个减少APK大小的好技巧。但事实上并不是:这不只影响到函数库的性能和兼容性

64位设备(arm64-v8a, x86_64, mips64)能够运行32位的函数库,但是以32位模式运行,在64位平台上运行32位版本的ART和Android组件,将丢失专为64位优化过的性能(ART,webview,media等等)

相关推荐

长腿美琪❤️
365bet官网注册

长腿美琪❤️

📅 01-24 👁️ 9183
全国扫黄打非的10大典型案件有哪些?
365bet官网注册

全国扫黄打非的10大典型案件有哪些?

📅 10-18 👁️ 677
雕饰束带
365账号投注被限制

雕饰束带

📅 08-04 👁️ 8072