• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

Android Framework高级开发-修改的系统Window上模拟器运行

互联网 diligentman 2小时前 2次浏览

课程答疑和新课信息:QQ交流群:422901085进行课程讨论
FrameWork实战课系列视频链接:https://edu.csdn.net/combo/detail/2123
或者点击这里
专题博客系列:
Android 8.1 zygote 启动过程源码
Android Framework实战视频–Zygote的fork进程篇
Android Framework实战视频–SystemServer启动篇
Android Framework实战视频–SystemServer启动FallbackHome篇
Android Framework实战视频–FallbackHome进程启动及Activity启动篇
Android Framework实战视频–FallbackHome结束启动Launcher篇

1、Ubuntu编译拷贝好对应的img

这个部分在我们入门课已经有了讲解可以去看framework入门课:https://edu.csdn.net/combo/detail/2123

在out/target/product/generic_x86_64目录下有:

system.img system-qemu.img userdata.img vendor-qemu.img vendor.img kernel-ranchu-64 ramdisk.img

这里要选择system-qemu.img和vendor-qemu.img,这两个镜像是专门为qemu运行制作的,如果选择system.img 和vendor.img,则avd运行失败。

这里我们之前如果在图形界面的Ubuntu上肯定一个emulator命令就可以跑起来,看到如下好看的界面:
Android Framework高级开发-修改的系统Window上模拟器运行
但是很多同学想着平时工作都是window多,也不可能天天使用Ubuntu办公,实在有些不方便,问老师是否可以考虑在window上模拟器运行起来我们编译的系统。这种需求其实还比较多,很多人一般都是使用一个阿里云什么只有一个命令行终端,根本不会有什么图形界面的Ubuntu,大部分公司服务器也一样只有个命令行终端,那么我们要实现的就是如下场景:
Android Framework高级开发-修改的系统Window上模拟器运行
既然是学员们提出的需求,我这边当然就尽量想办法满足,分享出来让以后学员就不需要我单独一个个讲了。

上面我们已经编译成功了到out的文件夹吧对应的几个img和kernel拷贝到我们的和window共享的目录下(这个共享部分就不需要多讲了,可以自行百度Samba或者模拟器映射路径)
这里我拷贝到一个路径如下:
Android Framework高级开发-修改的系统Window上模拟器运行

好那这里linux部分就完成了,接下就是window部分

2、window配置好对应的avd,替换对应img

2.1 首先在window端的android studio建立好一个avd,这个直接android studio就可以操作
Android Framework高级开发-修改的系统Window上模拟器运行
先创建一个虚拟机
Android Framework高级开发-修改的系统Window上模拟器运行
选择一个设备,这里我们选择一个pixel就行 1920 * 1080的
Android Framework高级开发-修改的系统Window上模拟器运行
这里为设置选择一个rom,因为我们目的是想运行我们自己编译的aosp的rom,所以选择和我们最贴近的x86选择一个x86_64对月的一个O版本,因为刚好我们自己编译的rom也是这个,如果没有下载就点击下载一下
Android Framework高级开发-修改的系统Window上模拟器运行
这里最后给我们创建模拟器命名为MyPhone
到此就完成了window本身的模拟器创建

3、替换window本身模拟器的img文件

上面已经实现了window模拟器的创建了,也可以运行模拟器了,但是我们目的是想要实现对我们编译的img运行,而不是sdk下载的img运行

Android Framework高级开发-修改的系统Window上模拟器运行
这里大家去sdk路径下找到刚刚我们下载的镜像文件夹,路径看截图,大家看到其实它主要也就是几个img的集合,这里本质上我们只需要对各个Ubuntu拷贝出来的img覆盖到这个文件夹下即可以实现运行我们自己编译的rom img文件

注意:这里要选择system-qemu.img和vendor-qemu.img改名成system.img和vendor.img

最后运行命令:
Android Framework高级开发-修改的系统Window上模拟器运行
然后打开命令行:
输入:./emulator -avd MyPhone 既可以
Android Framework高级开发-修改的系统Window上模拟器运行
大家看运行起来了课程里面的img,因为这开机动画都是Android Framework高级实战课里面BootAnimation的成果
最后:大家想学习framework的可以去买我的实战和入门系列课,相对很实惠,也不要忘记加入qq群:422901085哦


程序员灯塔
转载请注明原文链接:Android Framework高级开发-修改的系统Window上模拟器运行
喜欢 (0)