编译AAOS镜像并导入Android Studio

网上一般的操作,是先创建一个正常的AVD,然后将自己编译生成的镜像,替换AVD中的文件。本文介绍一种更为优雅的做法(参考Android虚拟设备作为开发平台  |  Android Open Source Project)。

构建镜像包

下载代码:

mkdir AOSP
cd AOSP
repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-11.0.0_r48
repo sync -d -c --no-tags -j80

编译:

. build/envsetup.sh
lunch aosp_car_x86_64-userdebug
make -j80

PS:据兄弟伙反馈,Android12 及其以后不能lunch aosp_开头的,否则不会生成模拟器相关的.img。需要sdk开头的比如:lunch sdk_car_x86_64-userdebug!!!

生成镜像包:

m emu_img_zip

注意,emu_img_zip只有在Android11之后才有,Android 11可参考如下修改:

修改device/generic/goldfish/Android.mk:

新增文件 tasks/emu_img_zip.mk

# Rules to generate a zip file that contains google emulator images
# and other files for distribution

ifeq ($(filter $(TARGET_PRODUCT), qemu_trusty_arm64),)
ifeq ($(filter $(MAKECMDGOALS), sdk win_sdk sdk_repo goog_emu_imgs),)
emulator_img_source_prop := $(TARGET_OUT_INTERMEDIATES)/source.properties
$(emulator_img_source_prop): $(PRODUCT_SDK_ADDON_SYS_IMG_SOURCE_PROP)
	@echo Generate $@
	$(hide) mkdir -p $(dir $@)
	$(hide) sed \
		-e 's/$${PLATFORM_VERSION}/$(PLATFORM_VERSION)/' \
		-e 's/$${PLATFORM_SDK_VERSION}/$(PLATFORM_SDK_VERSION)/' \
		-e 's/$${PLATFORM_VERSION_CODENAME}/$(subst REL,,$(PLATFORM_VERSION_CODENAME))/' \
		-e 's/$${TARGET_ARCH}/$(TARGET_ARCH)/' \
		-e 's/$${TARGET_CPU_ABI}/$(TARGET_CPU_ABI)/' \
		$< > $@ && sed -i -e '/^AndroidVersion.CodeName=\s*$$/d' $@

INTERNAL_EMULATOR_PACKAGE_FILES := \
        $(target_notice_file_txt) \
        $(emulator_img
### 使用镜像站点加速Android Studio下载 为了提升从官方渠道获取资源的速度,在中国地区推荐使用国内的镜像服务器来代替默认源。对于Android开发环境而言,配置合适的镜像能够显著改善依赖项和SDK组件的下载效率。 #### 配置HTTP代理指向镜像站 当需要更改网络设置以便利用特定的镜像服务时,可以通过调整IDE内部的HTTP代理选项实现: - 打开菜单栏中的`File`->`Settings`(Windows/Linux) 或 `Android Studio` -> `Preferences...`(macOS) - 寻找路径为`Appearance & Behavior` -> `System Settings` -> `HTTP Proxy` - 在此界面下选取`Auto-detect proxy settings`模式,指定自定义的URL地址为`http://mirrors.dormforce.net:80/`[^2] 上述操作完成后记得清除已存储密码缓存通过点击确认按钮使新设定生效。 另外值得注意的是,除了上述提到的方法外还有其他途径可以获得更流畅的体验,比如采用第三方模拟器替代内置Emulator或是连接真实设备进行调试等方案可供选择。 针对希望进一步优化整个工作流程的情况,还可以考虑将定制化的AAOS(AOSP-based Automotive OS)映像集成至开发环境中,从而更好地支持汽车平台上的应用程序测试与部署工作[^3]。 ```bash # 示例命令用于展示如何切换Gradle仓库为中国区阿里云Maven库 allprojects { repositories { maven { url 'https://maven.aliyun.com/repository/public' } google() jcenter() // Deprecated, but included for legacy support. } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值