• Windows使用模拟器启动AOSP源码编译的镜像


            正常情况下,源码编译后可直接执行emulator, 启动编译好的镜像,但是如果使用的是server版的ubuntu系统,没有图形界面,或者WSL编译的源码,以及我当前情况,AMD CPU + Hyper-V + ubuntu(intel CPU好像没这个问题),不得不使用其它方案启动编译好的镜像,该方案目前验证的Android10可行,但Android13 (android-13.0.0_r3)能连上adb,也能进shell,但无画面,从日志看图形有crash,应该是版本问题,其它版本自行验证


    启动AVD manager,并创建虚拟设备

    通过Android Studio启动AVD manager,该步骤只需执行一次,后续不再需要依赖Android Studio,理论上不使用Android Studio,只依赖Android SDK便可完成这一操作,如果你没有AS,又不想安装,可以摸索一下

    创建虚拟设备,创建成功后,便可在设备列表中看到,profile配置这一步不是必须的,也可以从现有的随便选一个

     

     

     选择加载的安卓镜像,这一步需要先从官网下载镜像,注意ABI要和编译源码时候lunch的类型一致,例如,我编译源码lunch的是x86_64的镜像,则此处选的也是x86_64镜像,点击download开始下载镜像

     下载好的镜像存放于SDK目录下system-images子目录内

    下载完成后点击下一步->完成

    此时便可以在设备列表中看到刚创建的虚拟设备

     文件管理器进入镜像存放目录,将原镜像备份,(此步骤非必须,备份主要是为了保留原来的)

     将源码out\target\product\$device_dir中,以下文件拷贝到上述备份的镜像目录下,拷贝带-qemu后缀的文件,删除-qemu后缀,带-qemu后缀的才是给模拟器用的

    advancedFeatures.ini
    build.prop (system/build.prop)
    encryptionkey.img
    kernel-ranchu
    ramdisk.img
    system.img

    VerifiedBootParams.textproto

            正常来说这样点击启动模拟器,就可以正常启动镜像,但是如果需要修改安卓源码,那是无法进行动态库替换的的,因为system分区没有写权限,需要修改启动,可以自定义bat脚本启动

    主要就是增加了-writable-system启动该选项,把模拟器路径替换为你自己的路径,aosp_x86_64_API_30 为上面设备名替换为你自己的,sysdir 为镜像目录,保存后直接双击bat便可打开模拟器

    1. set emulator_exe=D:\Green_Sorft\Android\Sdk\emulator\emulator.exe
    2. %emulator_exe% -avd aosp_x86_64_API_30 -writable-system -memory 4096 -sysdir D:\Green_Sorft\Android\Sdk\system-images\android-30\default\x86_64-aosp

  • 相关阅读:
    JAVA毕业设计高校排课管理系统计算机源码+lw文档+系统+调试部署+数据库
    Java类和对象(二)
    ADDS:卸载/降级域控制器
    【全开源】教育系统(FastAdmin+ThinkPHP+Uniapp)
    Canvas图形编辑器-数据结构与History(undo/redo)
    解密Java多线程同步:掌握线程间同步与互斥技巧
    Python实现XMind测试用例快速转Excel用例
    Serverless架构演进与实践
    Google Earth Engine-04(GEE中的JavaScript和原始JavaScript的异同和联系)
    不看后悔!第一本全面详解Transformer的综合性书籍!284页pdf下载
  • 原文地址:https://blog.csdn.net/mvp_Dawn/article/details/126848798