• android studio avd加载自己编译的镜像


    一、自己的镜像
    下载aosp并编译,这里我的是aosp12,具体下载略。
    编译,

    xxx@ubuntu:~/projects/aosp-12$ source build/envsetup.sh
    xxx@ubuntu:~/projects/aosp-12$ lunch sdk_x86_64
    ============================================
    PLATFORM_VERSION_CODENAME=REL
    PLATFORM_VERSION=12
    TARGET_PRODUCT=sdk_x86_64
    TARGET_BUILD_VARIANT=eng
    TARGET_BUILD_TYPE=release
    TARGET_ARCH=x86_64
    TARGET_ARCH_VARIANT=x86_64
    TARGET_2ND_ARCH=x86
    TARGET_2ND_ARCH_VARIANT=x86_64
    HOST_ARCH=x86_64
    HOST_2ND_ARCH=x86
    HOST_OS=linux
    HOST_OS_EXTRA=Linux-4.15.0-76-generic-x86_64-Ubuntu-18.04.4-LTS
    HOST_CROSS_OS=windows
    HOST_CROSS_ARCH=x86
    HOST_CROSS_2ND_ARCH=x86_64
    HOST_BUILD_TYPE=release
    BUILD_ID=SP2A.220405.003
    OUT_DIR=out
    PRODUCT_SOONG_NAMESPACES=device/generic/goldfish device/generic/goldfish-opengl hardware/google/camera hardware/google/camera/devices/EmulatedCamera device/generic/goldfish device/generic/goldfish-opengl
    ============================================
    xxx@ubuntu:~/projects/aosp-12$ make
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    编译成功后,out\target\product\emulator_x86_64目录下可以看到编译结果。
    在这里插入图片描述
    二、android studio avd模拟器镜像替换
    使用Android studio创建,模拟器,api级别选择一致。选择没有gms包的,abi与上面编译使用的abi一致。
    在这里插入图片描述
    我这里是31,android12,abi选择x86_64没有google api的镜像。选择创建。
    创建后会下载镜像到sdk的目录下。
    sdk目录\system-images\android-31\default\x86_64
    将此目录下的内容全拷贝出来,备份用。然后将,上面自己编译的镜像复制过来。
    包括所有的文件和data、system目录。
    在这里插入图片描述
    将system目录中的build.prop复制一份,到x86_64目录下。将vendor-qemu.img,system-qemu.img重命名为vendor.img ,system.img覆盖调原文件。
    三、启动avd
    使用cmd启动虚拟机。

    最后启动avd虚拟机。就是加载自己镜像的模拟器。
    emulator环境变量没配的配下。
    在这里插入图片描述

  • 相关阅读:
    AI 时代的向量数据库、关系型数据库与 Serverless 技术丨TiDB Hackathon 2023 随想
    Python在WRF模型自动化运行及前后处理中的应用
    java list set 特性
    Java面向对象(基础)-- 类的成员之三:构造器(Constructor)
    webGL编程指南 第三章 旋转三角形RotatedTriangle.js
    “后Optane时代”的替代存储方案有哪些?
    MBR16200FCT-ASEMI大功率肖特基二极管MBR16200FCT
    怎么写好论文引言?
    我是如何保护 70000 ETH 并赢得 600 万漏洞赏金的
    APT攻击
  • 原文地址:https://blog.csdn.net/qq_41285455/article/details/125010654