当前位置:首页>安卓APP>安卓15构建目标介绍

安卓15构建目标介绍

  • 2026-10-11 06:37:39
安卓15构建目标介绍

构建 Android 时需要先确定要构建的目标(target)。目标旨在反映要构建的目标平台。例如:

sdk_phone64_x86_64-trunk_staging-eng

使用 lunch <target> 命令后,会看到目标和构建环境的概要:

============================================PLATFORM_VERSION_CODENAME=BaklavaPLATFORM_VERSION=BaklavaTARGET_PRODUCT=sdk_phone64_x86_64TARGET_BUILD_VARIANT=engTARGET_ARCH=x86_64TARGET_ARCH_VARIANT=x86_64TARGET_2ND_ARCH_VARIANT=x86_64HOST_OS=linuxHOST_OS_EXTRA=Linux-5.15.0-139-generic-x86_64-Ubuntu-20.04.6-LTSHOST_CROSS_OS=windowsBUILD_ID=MAINOUT_DIR=outSOONG_ONLY=false============================================

注意:必须对每个 shell 运行一次 source envsetup.sh,并且要在 lunch 命令之前运行,因为 lunch 是由 envsetup.sh 定义的。

表示目标的字符串采用以下格式:

lunch product_name-release_config-build_variant

product_name 是要构建的产品的名称。

release_config 是开发版本配置,用于标识位于功能发布标志后面的特定功能和代码,并可为 build 启用或停用这些功能和代码。

build_variant 是build 变体,有三个选择:user、userdebug、eng。

比如这里

TARGET_PRODUCT=sdk_phone64_x86_64TARGET_BUILD_VARIANT=eng

product_name 是 sdk_phone64_x86_64 。

build_variant 是 eng。

release_config 是 trunk_staging。

TARGET_ARCH=x86_64TARGET_ARCH_VARIANT=x86_64

TARGET_ARCH 和 TARGET_ARCH_VARIANT 是目标设备的 CPU 架构和架构变体。

版本配置(release_config)是一个目录,其中包含特定 Android build 的所有标志值文件(已启用和停用某些功能)。例如 trunk_staging。版本配置目录位于 根目录/build/release/aconfig/ 下(下图中AOSP15是我源码的根目录)。

进入 trunk_staging 目录下,有一些命名像是软件包名的目录,其实就是包名,这里重点关注 com.android.wm.shell 这个目录。

进入 com.android.wm.shell ,会有一些textproro文件,这些是配置功能标志的具体文件。

打开 enable_taskbar_on_phones_flag_values 文件,里面的内容如下图:

package 包含与声明中所用软件包名称相同的软件包名称。

name 包含声明中所用名称相同的名称。

state 是 ENABLED 或 DISABLED。

permission 是 READ_WRITE 或 READ_ONLY。通常,对于属于版本配置的标志值文件,permission 会设置为 READ_ONLY。

这里的 enable_taskbar_on_phones 值在Launcher3和SystemUI中都有用到。

其他信息可阅读谷歌官方文档:

https://source.android.google.cn/docs/setup/build/building?hl=zh-cn

谷歌官方文档

最新文章

随机文章