12-1.Android Build 之 ABI(Build.SUPPORTED_ABIS、Build.CPU_ABI)

一、Build 类

  1. Build 类从系统属性中提取设备硬件和版本信息

  2. Build 类用于适配不同设备、检查系统版本、启用特定功能、在日志中记录设备信息等

  3. Build 类其中的内部类有 Build.VERSIONBuild.VERSION_CODES


二、ABI

  1. ABI 全称 Application Binary Interface,即应用二进制接口,是应用程序与操作系统之间的接口

  2. ABI 确保不同组件(例如,应用程序、库、操作系统)之间的二进制兼容性

  3. Android 支持的 ABI 类型:arm64-v8a(64 位 ARM 架构)、armeabi-v7a(32 位 ARM 架构)、x86(32 位 x86 架构)、x86_64(64 位 x86 架构)等


三、Android 开发中的 ABI

1、Build.SUPPORTED_ABIS
(1)基本介绍
  1. Build.SUPPORTED_ABIS 是一个字符串数组,包含了当前 Android 设备支持的所有应用二进制接口的名称

  2. Build.SUPPORTED_ABIS 主要用于开发者在编译或打包应用程序时选择合适的本地库

(2)演示
for (String supportedAbi : Build.SUPPORTED_ABIS) {
    Log.i(TAG, "supportedAbi: " + supportedAbi);
}
  • 输出结果
supportedAbi: armeabi-v7a
supportedAbi: armeabi
2、Build.CPU_ABI
(1)基本介绍
  1. Build.CPU_ABI 是一个字符串,表示设备的主 CPU 架构对应的 ABI 名称

  2. Build.CPU_ABI 返回设备的主要或首选 ABI,这通常是设备性能最优的 ABI

(2)演示
Log.i(TAG, "cpuAbi: " + Build.CPU_ABI);
  • 输出结果
cpuAbi: armeabi-v7a
3、Build.SUPPORTED_ABIS 对比 Build.CPU_ABI
  1. Build.SUPPORTED_ABIS 提供了设备支持的所有 ABI 的列表,而 Build.CPU_ABI 只返回设备的主要 ABI

  2. Build.SUPPORTED_ABIS 适用于需要确保应用程序在不同设备上都能找到合适本地库的场景,而 Build.CPU_ABI 则更适用于需要针对设备主要 ABI 进行优化的场景

  3. 通常情况下,Build.CPU_ABI 返回的 ABI 会包含在 Build.SUPPORTED_ABIS 列表中

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值