性能等级

性能等级是 Android 12 中首次引入的标准。性能等级定义超出 Android 基准要求的一组设备功能。

每个 Android 版本都有自己对应的性能等级,这在该版本的 Android 兼容性定义文档 (CDD) 中进行定义。Android 兼容性测试套件 (CTS) 会验证 CDD 要求。

每个 Android 设备都会声明其支持的性能等级。开发者可以在运行时查看设备的性能等级,并提供充分利用设备功能的升级体验。

如需了解设备的性能等级,请参阅 Jetpack Core Performance 库。此库目前会报告设备的媒体性能等级。首先,在应用的 onCreate() 生命周期事件中创建 DevicePerformance 实例:

Kotlin

var devicePerformance = DevicePerformance.create(context)

Java

DevicePerformance devicePerformance = DevicePerformance.create(context);

然后,您可以检索 mediaPerformanceClass 属性,以根据设备的功能定制应用体验:

Kotlin

when {
  devicePerformance.mediaPerformanceClass >= Build.VERSION_CODES.T -> {
    // Performance class level 13 and above
    // Provide the most premium experience for highest performing devices
  }
  devicePerformance.mediaPerformanceClass == Build.VERSION_CODES.S -> {
    // Performance class level 12
    // Provide a high quality experience
  }
  else -> {
    // Performance class level 11 or undefined
    // Remove extras to keep experience functional
  }
}

Java

if (devicePerformance.mediaPerformanceClass >= Build.VERSION_CODES.T) {
  // Performance class level 13 and above
  // Provide the most premium experience for highest performing devices
} else if (devicePerformance.mediaPerformanceClass == Build.VERSION_CODES.S) {
  // Performance class level 12
  // Provide a high quality experience
} else {
  // Performance class level 11 or undefined
  // Remove extras to keep experience functional
}

性能等级向前兼容。设备可以升级到较新的平台版本,而无需更新其性能等级。例如,一个最初支持性能等级 12 的设备可以升级到 Android 13,但在不满足等级 13 要求时继续报告其支持等级 12。这意味着,性能等级提供了一种方式来将设备分组在一起,而不依赖于特定的 Android 版本。

性能等级 13

性能等级 13 以性能等级 12 中引入的要求为基础。 如需了解具体的性能等级要求,请参阅 Android CDD。除了对性能等级 12 中的条目提高了要求之外,CDD 还在以下方面指定了新要求:

媒体

  • AV1 硬件解码器
  • 安全硬件解码器
  • 解码器初始化延迟时间
  • 往返音频延迟时间
  • 有线头戴式耳机和 USB 音频设备
  • MIDI 设备
  • 由硬件支持的可信执行环境

摄像头

  • 预览防抖功能
  • 慢镜头录制
  • 超广角摄像头的最小缩放比率
  • 并发摄像头
  • 逻辑多摄像头
  • 数据流用例

性能等级 12

性能等级 12 侧重于媒体用例。如需了解具体的性能等级要求,请参阅 Android CDD。CDD 指定了以下几个方面的要求:

媒体

  • 并发视频编解码器会话
  • 编码器初始化延迟时间
  • 解码器丢帧
  • 编码质量

摄像头

  • 分辨率和帧速率
  • 启动和拍摄延迟时间
  • FULL 或更高级别的硬件
  • 时间戳来源为实时来源
  • RAW 功能

通用

  • 内存
  • 读写性能
  • 屏幕分辨率
  • 屏幕密度

性能等级 11

性能等级 11 包含性能等级 12 的一部分要求,可让开发者在较旧但功能依然强大的设备上提供量身定制的体验。如需了解具体的性能等级要求,请参阅 Android CDD