Android 来源通用 product/device 类型差异

Android source generic product/device type differences

AOSP tree中基本上是3种通用设备类型。

mini_qemu_mini_emulator_ 的区别和用途是什么?

编辑: 谷歌了一下我没有找到详细的解释,但是 this blog post 指出,还有三个 'products' 既不是特定设备也不是通用产品:full, aospsdk。这些到底有什么作用?

编辑 2: 从不同的 ROM(aosp、cyanogenmod、aospa)查看 envsetup.sh,似乎可以将 TARGET_PRODUCT 设置为 aosp_<arch>full_<arch> 之类的东西。这是 mini_qemu_mini_emulator_ 之一的别名还是别的什么?

所以在深入研究 android 构建系统之后,我想我现在明白了:

允许以下 TARGET_PRODUCT

  • aosp_ 只是 full_ 的别名。它接受所有架构(armx86mipsarm64x86_64mips64)并且也用于设备(​​例如 aosp_flounder)
  • 如果没有通过 aosp_ 指定设备,
  • full_ 是模拟器的全功能构建。它包括 core_。 (full 没有 _arch 默认为 arm
  • sdk_ 只是 sdk_phone_ 的别名。 (sdk 没有 _arch 默认为 armv7
  • sdk_phone_ 为特定架构构建 Android SDK。它也包括 core_
  • generic_ 是基本的 Android 平台,不专门用于任何主板。它可以为 arm(如果未指定则默认)、x86mips 构建。我不认为这可以在设备或模拟器上启动。
  • core_ 是所有面向通信的 android 设备(例如手机和平板电脑)的基本配置。
  • mini_ 以某种方式扩展了 core_。它似乎是一个只使用基本配置而不是全功能构建的模拟器构建。但是我不确定这个。
  • mini_emulator_mini_ 与 goldfish 和 QEMU 相关文件合并。它似乎也是一些基本的模拟器构建。
  • qemu_ 是 qemu(不是 android 模拟器)的绝对最小 android 构建。它只有启动所需的东西和一些命令行 utilities/libraries 和 adb.