Android 来源通用 product/device 类型差异
Android source generic product/device type differences
在AOSP tree中基本上是3种通用设备类型。
- 列表是
base path
:PRODUCT_DEVICE
、PRODUCT_NAME
device/generic/<arch>
: <arch>
, mini_<arch>
device/generic/qemu
: generic_<arch>
, qemu_<arch>
device/generic/mini-emulator-<arch>
: mini-emulator-<arch>
, mini_emulator_<arch>
mini_
、qemu_
和 mini_emulator_
的区别和用途是什么?
编辑:
谷歌了一下我没有找到详细的解释,但是 this blog post 指出,还有三个 'products' 既不是特定设备也不是通用产品:full
, aosp
和 sdk
。这些到底有什么作用?
编辑 2:
从不同的 ROM(aosp、cyanogenmod、aospa)查看 envsetup.sh,似乎可以将 TARGET_PRODUCT
设置为 aosp_<arch>
或 full_<arch>
之类的东西。这是 mini_
、qemu_
或 mini_emulator_
之一的别名还是别的什么?
所以在深入研究 android 构建系统之后,我想我现在明白了:
允许以下 TARGET_PRODUCT
:
aosp_
只是 full_
的别名。它接受所有架构(arm
、x86
、mips
、arm64
、x86_64
和 mips64
)并且也用于设备(例如 aosp_flounder
)
如果没有通过 aosp_
指定设备,full_
是模拟器的全功能构建。它包括 core_
。 (full
没有 _arch
默认为 arm
)
sdk_
只是 sdk_phone_
的别名。 (sdk
没有 _arch
默认为 armv7
)
sdk_phone_
为特定架构构建 Android SDK。它也包括 core_
generic_
是基本的 Android 平台,不专门用于任何主板。它可以为 arm
(如果未指定则默认)、x86
和 mips
构建。我不认为这可以在设备或模拟器上启动。
core_
是所有面向通信的 android 设备(例如手机和平板电脑)的基本配置。
mini_
以某种方式扩展了 core_
。它似乎是一个只使用基本配置而不是全功能构建的模拟器构建。但是我不确定这个。
mini_emulator_
将 mini_
与 goldfish 和 QEMU 相关文件合并。它似乎也是一些基本的模拟器构建。
qemu_
是 qemu(不是 android 模拟器)的绝对最小 android 构建。它只有启动所需的东西和一些命令行 utilities/libraries 和 adb.
在AOSP tree中基本上是3种通用设备类型。
- 列表是
base path
:PRODUCT_DEVICE
、PRODUCT_NAME
device/generic/<arch>
:<arch>
,mini_<arch>
device/generic/qemu
:generic_<arch>
,qemu_<arch>
device/generic/mini-emulator-<arch>
:mini-emulator-<arch>
,mini_emulator_<arch>
mini_
、qemu_
和 mini_emulator_
的区别和用途是什么?
编辑:
谷歌了一下我没有找到详细的解释,但是 this blog post 指出,还有三个 'products' 既不是特定设备也不是通用产品:full
, aosp
和 sdk
。这些到底有什么作用?
编辑 2:
从不同的 ROM(aosp、cyanogenmod、aospa)查看 envsetup.sh,似乎可以将 TARGET_PRODUCT
设置为 aosp_<arch>
或 full_<arch>
之类的东西。这是 mini_
、qemu_
或 mini_emulator_
之一的别名还是别的什么?
所以在深入研究 android 构建系统之后,我想我现在明白了:
允许以下 TARGET_PRODUCT
:
aosp_
只是full_
的别名。它接受所有架构(arm
、x86
、mips
、arm64
、x86_64
和mips64
)并且也用于设备(例如aosp_flounder
)
如果没有通过 full_
是模拟器的全功能构建。它包括core_
。 (full
没有_arch
默认为arm
)sdk_
只是sdk_phone_
的别名。 (sdk
没有_arch
默认为armv7
)sdk_phone_
为特定架构构建 Android SDK。它也包括core_
generic_
是基本的 Android 平台,不专门用于任何主板。它可以为arm
(如果未指定则默认)、x86
和mips
构建。我不认为这可以在设备或模拟器上启动。core_
是所有面向通信的 android 设备(例如手机和平板电脑)的基本配置。mini_
以某种方式扩展了core_
。它似乎是一个只使用基本配置而不是全功能构建的模拟器构建。但是我不确定这个。mini_emulator_
将mini_
与 goldfish 和 QEMU 相关文件合并。它似乎也是一些基本的模拟器构建。qemu_
是 qemu(不是 android 模拟器)的绝对最小 android 构建。它只有启动所需的东西和一些命令行 utilities/libraries 和 adb.
aosp_
指定设备,