转:http://www.eoeandroid.com/industry/2012/0215/671.html
不知道有多少Android开发者对Android虚拟机的那悲剧的性能有意见,反正我的看法是:那速度实在是太坑爹了!
为什么Android虚拟机比iOS和WP7的虚拟机要慢很多呢?原因如下:
1. Android 模拟器模拟的是 ARM 的体系结构(arm-eabi),而 iOS 和 WP7 的模拟器的目标体系结构都是 x86 的,另外 iOS 的模拟器中运行的 App 也是编译为 x86 的。这样一来 Android 模拟器需要做一些额外的二进制翻译工作。
2. Android 模拟器用的是 QEMU 的全系统模式(full system),也就说它模拟时需要启动整个 GUEST 系统,初始化各种模拟设备。相反的,iOS 和 WP7 的模拟器只是 user-mode 的模拟。
3. 在 Android 模拟器之中还需要跑一个 Dalvik VM,用以执行 Android 应用的 bytecodes。
综上所述,慢的一个主要原因就是虚拟机不是跑在x86上而是模拟的ARM,有没有办法弄个x86的Android呢?
答案是当然有———开源项目Android-x86,这个牛B的开源项目将Android移植到了x86平台,系统运行的时候不再需要模拟成ARM,这样就能直接将Android装在PC或虚拟机上流畅的运行了。
万事俱备,只欠东风了,下面我就来讲一下我使用Android-X86和VirtualBox打造手机开发模拟器的整个流程
1.下载Android-x86系统镜像文件
首先到http://www.android-x86.org/download下载android-x86-2.2-generic.iso,镜像文件大约85MB
2.在VirtualBox上创建虚拟机
操作系统选择Linux,版本选择Linux 2.6
内存建议为512MB
硬盘默认8GB即可,因为是开发用,8GB绰绰有余了
虚拟机创建好之后,还需要修改一些配置
首先是调整网卡,连接方式建议选择bridged adapter这样虚拟机在局域网中有独立IP可以方便访问,然后控制芯片要选择为PCnet-PCI II,否则Android-x86无法识别网卡
如果你想有声音的话需要在声音设置面板将控制芯片设置为soundblaser 16
把虚拟机的光驱设置为我们刚才下载的Android-x86 iso之后,启动虚拟机
思想之地原创文章,谢绝转载
3.安装Android-x86到虚拟机
虚拟机启动后,你可以看到下面的画面
第一和第二的项目是让你不用安装体验高、中DPI的Android-x86,有兴趣的话可以先运行体验一下x86的速度
我们要安装Android到硬盘,选择最后一项后回车
Installation - Install Android-x86 to harddisk
接下来我们会进入安装界面,界面效果如下
我们选择Create/Modify partitions来创建分区
首先我们选择new来创建新分区
选择Primary创建主分区
分区大小采用默认大小即可
然后我们设定该分区可以引导(选中Bootable后回车),这是分区的flag会显示boot,然后我们再选择write将修改写入到硬盘(选择write之后还需要输入yes来确认)
分区完毕后再选择quit即可退出,退出后,我们就能看到刚才分配的新分区被识别出来了
按下回车选择该分区,这时会询问采用什么分区格式格式化分区,建议选择ext3
选择好格式后系统会再跟你确认一遍,输入yes安装就会开始了
安装中途会询问你是否安装Grub,这里一定要选择YES,因为我们后需要Grub来自定义启动Android
安装Grub的时候会询问你是否将/system目录安装为读写模式(设为读写可以更方便的debug,但是会占用更多的空间和安装时间),选择yes
回车后安装就会开始了
安装结束后,会弹出一个菜单
三个选项分别是
运行Android
创建一个虚拟SD卡
重启
因为我们开发肯定会用到SD卡,所以在此我们创建一个虚拟SD卡
创建时会询问SD卡的大小,根据你的需要设定即可,我在此设定的是128MB
回车后安装程序就会开始初始化sd卡了
格式完毕后,会提示重启,此时退出虚拟机光驱中的系统盘后重启,重启后就能进入Android系统了
注意使用在Android系统中使用鼠标的时候需要设置Virtual Box禁止自动鼠标独占,否则鼠标在Android中无法正常使用
Android-x86运行截图:
思想之地原创文章,谢绝转载
4.自定义虚拟机分辨率
我们在开发时肯定需要测试不同的分辨率,那么如何自定义Android虚拟机的分辨率呢?
首先我们需要从Virtual Box的设定入手
打开cmd,进入Virtual Box的下你创建的虚拟机的目录,我创建的虚拟机叫Android-x86,我的账户是Administrator,在我Windows XP上的路径是
C:\Documents and Settings\Administrator\VirtualBox VMs\Android-x86
注意:
1.在不同操作系统下路径会有一些不同,请根据操作系统的实际情况寻找,原则上都是在你当前用户的个人文件夹里
2.Android-x86是我创建的虚拟机的名称,如果你的和我的不同,请修改为你创建的虚拟机的名称
在这里我们需要使用VirtualBox提供的命令行工具来给你的虚拟机添加一个自定义分辨率,例如我想添加一个现在流行的手机屏幕分辨率 480x800,那么我们输入的命令如下
"C:\Program
Files\Oracle\VirtualBox\VBoxManage.exe"setextradata "Android-x86"
"CustomVideoMode1" "480x800x16"
上面的命令中,加粗的部分是要根据你自己电脑上的情况进行修改的,相关解释如下:
"C:\Program Files\Oracle\Virtual
分享到:
相关推荐
android-x86_64-9.0-r2.iso it can be install in the Windows Virtual Machine directly!
android-x86_64-9.0-r1.iso 百度网盘下载 9.0-r1 基于最新的 Android 9.0.0 Pie 版本(android-9.0.0_r53)。 支持OpenGL ES 3.x,UEFI,Vulkan 支持多点触控、音频、Wifi、蓝牙、传感器、摄像头和以太网(仅 DHCP)。...
使用VBOX安装安卓,运行速度那是一个快,辛辛苦苦安装好了安卓版的虚拟机,但启动后发现所有APP启动后都是横屏的,不但看起来累,鼠标操更加麻烦,下面就让我来教大家解决这个问题,让虚拟机安卓系统启动时自动竖...
CentOS-7-x86_64-Vagrant-2004_01.VirtualBox.box 资源
由于服务器在国外,所以我们在线安装VirtualBox往往都会失败。这里我们使用本地安装CentOS-7-x86_64-Vagrant-2004_01.VirtualBox,里面有安装步骤。
VirtualBox-5.2-5.2.26_128414_el6-1.x86_64.rpm
virtualbox 6.1 extension VNC安装包(需要下载zstd工具进行解压)
docker-compose (v2.21.0...wget https://github.com/docker/compose/releases/download/vv2.21.0-rc.1/docker-compose-linux-x86_64 VirtualBox-7.0.14-161095-Win.exe: https://www.virtualbox.org/wiki/Downloads
VirtualBox-5.1.26-117224-Win.exe
Genymotion-2.8.0+VirtualBox一体包,直接安装就可以使用模拟器,方便实用
Kali Linux VirtualBox(kali-linux-2022.2-virtualbox-i386.ova)文件分割成 4个 压缩包,必须集齐4个 文件后才能一起解压一起使用: kali-linux-2022.2-virtualbox-amd64.part1 ...kali-linux-2022.2-virtualbox-amd...
包括eNSP、WinPcap_4_1_3、VirtualBox-5.2.26-128414-Win三个软件, 安装eNSP前先安装WinPcap和VirtualBox, 如需要CE12800镜像, 下载地址:https://download.csdn.net/download/kjkdd/87653212
VirtualBox-6.1.22-144080-Win.exe
VirtualBox 虚拟机软件
VMware Tools是一款VMware Workstation 虚拟机软件的增强工具包,相当于VirtualBox中的增强功能(Sun VirtualBox Guest Additions),是VMware提供的增强虚拟显卡和硬盘性能、以及同步虚拟机与主机文件的驱动程序。...
Kali Linux VirtualBox(kali-linux-2022.2-virtualbox-i386.ova)文件分割成 4个 压缩包,必须集齐4个 文件后才能一起解压一起使用: kali-linux-2022.2-virtualbox-i386.part1 ... kali-linux-2022.2-virtualbox-i386...
Oracle_VM_VirtualBox_Extension_Pack-7.0.4.vbox-extpack
Kali Linux VirtualBox(kali-linux-2022.2-virtualbox-i386.ova)文件分割成 4个 压缩包,必须集齐4个 文件后才能一起解压一起使用: kali-linux-2022.2-virtualbox-i386.part1 ... kali-linux-2022.2-virtualbox-i386...