Adnroid架构的详细说明

armeabi

  • armeabi是一个非常老的基于ARM的架构。从Android 4.4开始,CDD(compatibility definition)严格要求ARMv7读取CDD文档。 CDD是Google向设备制造商提供的每个Android版本的规范,它包含了发布具有Google认证的Android设备的最低要求。 大多数设备制造商在Android 4.4之前转移到armV7,因此我们现在可以安全地忽略这个armeabi架构。

rmeabi-V7A

  • 这是目前最常用的架构。这是所有应用程序必须支持的ABI。

  • armeabi-v7a - 32位 - ARM Cortex-A5,ARM Cortex-A7,ARM Cortex-A8,ARM Cortex-A9,ARM Cortex-A12,ARM Cortex-A15,ARM Cortex-A17

arm64-V8A

  • 这是下一代64位ARM架构。所有旗舰手机都采用这种架构。从Nexus 5x开始,Nexus 6P,Google Pixel都使用64位ARM芯片组。

  • arm64-v8a - 64位 - ARM Cortex-A35,ARM Cortex-A53,ARM Cortex-A57,ARM Cortex-A72,ARM Cortex-A73

  • 支持此ABI是可选的,因为设备可以使用本地库的armeabi-v7a版本。在64位处理器上使用32位版本的库会有轻微的性能损失,但考虑到我们可以在上面的示例中节省大约1MB的APK大小,这应该是可以避免使用的。

  • 如果您使用的是本地库,这是您项目的核心部分,并且您希望在旗舰手机上为用户提供最佳体验,那么您可以包含此ABI,但对于大多数应用程序,这可以删除,直到我们看到大多数设备采用64位处理器。

X86

基于英特尔处理器的设备,华硕ZenFone2是众多联想手机中最知名的设备,应用程序必须支持这一点。

X86-64

市场上没有配备64位英特尔处理器的安卓设备,即使设备很少,它也可以很好地使用32位版本的本机库,因此捆绑时可以避免使用X86-64库。

mips和mips64

市场上没有MIPS架构的Android设备。 有一个设备应该在2016年推出但我没有找到除本文第一个MIPS设备之外的任何信息,并且在Reddit上有一个关于MIPS的线程。

参考

Controlling APK Size When Using Native Libraries

https://android.jlelse.eu/controlling-apk-size-when-using-native-libraries-45c6c0e5b70a

转载于:https://my.oschina.net/u/2501904/blog/2878229

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值