背景
近期很多学员有问道关于aosp17版本分支代码下载下来后发现有编译无法通过的问题。针对学员报出这类无法编译通过问题,马哥也和相关有已经进行编译成功的进行交流验证,发现确实需要一些额外的修改才可以编译通过,这里感谢相关的学员朋友提供的线索。

repo安卓17代码
repo这块依据和以前一样,大家如果知道特点的aosp 17的rc分支可以直接指定,如果不知道的可以先repo出main分支,然后再去.repo/manifests进行切换分支既可以。
bash
repo init --partial-clone -b main -u https://android.googlesource.com/platform/manifest
cd .repo/manifests
git pull
git branch -a | grep 17 #为了寻找17版本的rc详细分支,取最新的
这里发现aosp17只有一个rc的版本号为android-17.0.0_r1。
bash
git checkout -b android-17.0.0_r1 remotes/origin/android-17.0.0_r1
确保版本为 android-17.0.0_r1
bash
test@test:~/disk_2T/aosp17/.repo/manifests$ git branch
* android-17.0.0_r1
default
编译踩坑注意点
lunch目标变化
bash
lunch sdk_phone64_x86_64
编译分区不足问题
编译后会报错分区不够相关问题,需要修改如下
bash
cd device/generic/goldfish/
diff --git a/64bitonly/product/sdk_phone64_x86_64.mk b/64bitonly/product/sdk_phone64_x86_64.mk
index 6cdb685f..de5691aa 100644
--- a/64bitonly/product/sdk_phone64_x86_64.mk
+++ b/64bitonly/product/sdk_phone64_x86_64.mk
@@ -15,7 +15,7 @@
#
PRODUCT_USE_DYNAMIC_PARTITIONS := true
-BOARD_EMULATOR_DYNAMIC_PARTITIONS_SIZE ?= $(shell expr 1800 \* 1048576 )
+BOARD_EMULATOR_DYNAMIC_PARTITIONS_SIZE ?= $(shell expr 2100 \* 1048576 )
BOARD_SUPER_PARTITION_SIZE := $(shell expr $(BOARD_EMULATOR_DYNAMIC_PARTITIONS_SIZE) + 8388608 ) # +8M
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit_only.mk)
编译相关成果及明显差异体验
最近任务的样式有变化

注意在settings版本中还是显示老版本是aosp 16但是实际上确实整个代码都是17的,应属于原生bug,大家感兴趣关注后续是否会更新。

文章来源: