配置Android虚拟机使用自己编译的AOSP镜像

在使用Google官方的AVD调试的时候会出现行号不对应的情况,导致无法进行代码逻辑分析。目前我自己的解决方案就是编译AOSP的镜像,然后替换到AVD里面,这样调试就会好很多。

以Android12L为例,具体步骤如下:

1、下载AOSP代码

repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-12.1.0_r1

repo sync -j8 -c –no-tags

-c:只拉取指定分支。

–no-tags:不获取tags,Google官方文档说是默认带了,但是好像没有,需要加上去。

这两个主要作用是减少代码拉取量,减少文件夹大小。

2、编译x86_64镜像,应该是适用于所以的Android版本,我在Android11、Android12、Android12L上面测试是没有什么问题的

source build/envsetup.sh && lunch sdk_phone_x86_64-userdebug && make -j6

3、创建官方Android12L虚拟机

4、复制一份虚拟机镜像
具体位置在Android SDK目录中的system-images路径。我一般在复制的路径后面加“-customer”

5、复制编译好的相关文件到android-32-customer\google_apis\x86_64\目录下,详细文件如下:

build.prop文件是在编译目录下的out\target\product\emulator_x86_64\system路径中(如下图)。其他的都在out\target\product\emulator_x86_64中

6、复制一份虚拟机配置

7、修改虚拟机配置文件的image.sysdir.1属性到新的路径。
配置文件路径:C:\Users\自己登录的用户\.android\avd\Copy_of_Pixel_5_API_32.avd\config.ini

8、启动虚拟机。我测试的是不能使用Wipe Data功能,并且要使用Cold Boot Now启动镜像

启动后的如下,但是没有Google全家桶,而且使用起来还比较流畅。

You May Also Like

About the Author: ice.zhai

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注