继上一篇Android
Studio VS Eclipse的文章后接着来分享AnDevCon大会上的内容(这是别人分享给我的,导致中间很多遗漏,许多都是我自己上网找资料补充的,请见谅),今天的主题是关于Android模拟器的一些事。
简介:
Android Virtual Device就是我们常说的模拟器了。简称AVD或者Emulator。对模拟器的管理都在一个叫做Android Virtual
Device Manager里。
模拟器为什么这么慢?
大家都知道有模拟器这么一个东西,但为什么大家都不用。主要原因就是模拟器太慢了,所以肯定有人就抱怨说Google模拟器做的真垃圾,再看看IOS的模拟器,因为当初我就是其中一个,哈哈。
但为什么模拟器会这么慢呢?
主要原因就是CPU的问题。现在Android手机上用的所有CPU都是ARM的,运行的都是ARM的android系统镜像。但是我们的台式机都是Intel的。所以我们在台式机上运行Android模拟器就会导致非常的慢。所以解决办法就是使用运行Intel系统镜像的android模拟器。
Android
x86模拟器&HAXM:
据说Intel也要进军手机CPU市场了,所以Intel推出支持x86的Android模拟器。
而且Intel还推出了一个硬件加速管理器:Intel
Hardware Accelerated Execution Manager 简称Intel HAXM.
在Intel的电脑上运行这个x86模拟器再配合HAXM将会得到和Android真机相媲美的运行效果。我看过他的演示效果,大概启动到运行需要4,5秒吧,而且特别流畅。
因为我家里SDK下载实在太慢了,所以我没有安装他,大家如果感兴趣可以下一个,网上很多相关教程帖子可以参考。除了懒还有一个不装他的原因就是还有一个更好的模拟器Genymotion。
更强大的模拟器-Genymotion!
Genymotion安卓模拟器其实不是普通的模拟器,严格来说,genymotion是一个虚拟机。由于他的种种特性和优点现在被越来越多的开发,测试甚至游戏玩家所使用。
接下来说说我使用了一个多月的感受:
优点:
1.速度
速度真的非常快。完全媲美真机。在我电脑上从点run开始启动模拟器到程序运行只用5-10秒钟,之后模拟器不用关闭,基本就是点run之后瞬间运行。响应速度和流畅度真的和真机没有差别。
2.全机型模拟
可以选择市面上几乎所有主流的手机设备,平板稍微少一些。不过可以自己定义任意大小屏幕和配置来解决这个问题。所以Genymotion特别适合那种设备不齐全,设备不多的情况。
3.鼠标(触摸板)加键盘操作
速度上来后模拟器的优势就体现出来了,再也不需要拿着手机按来按去,或者连着usb线各种方向的转屏。直接鼠标点击(鼠标差一些,我用的触摸板感觉更方便),键盘输入,特别快捷。当然多点触摸和传感器什么的稍微费劲一点,不过应用开发这些一般很少涉及这些。
4.可以同时启动多个模拟器
有的时候大家都会遇到这样的情况,改一点小问题运行看下效果,再改一点再看效果。或者平板手机同时开发,需要两边一起观看效果。这时我就会运行2,3个模拟器加上1,2个真机轮番作战,效率大大提高。
5.特别适合在家里开发
在家里开发不可能有那么多设备,这时候有个模拟器一切问题都解决了。
6.安装软件
安装软件可以从桌面直接拖拽到模拟器中安装,相当的方便。
7.可以随便折腾
中国的手机都是没有Google框架和服务的,用不了Google Play,Google+,还有一些其他Google推出的一些app。因为在有很多时候我们需要模仿国外大公司产品的特效或者界面,这时候就需要去运行它(Google Play装好以后直接搜索想安装的软件就可以了,但需要代理或VPN)。Genymotion的优势又出来,框架、服务随便装,随便弄,直接下好拖拽进去就行了,弄乱了弄坏了再建个新的。
8.截图
在运行中有什么问题或需要直接截图到电脑,比用手机截图方便很多。
缺点:
1.偶尔遇到和真机效果不同的地方,公司的项目有个自定义的搜索栏,用真机可以正常输入,但模拟器点不进去,一直不知道什么原因,除了这一个问题以外没有再发现类似情况。
2.偶尔会直接从程序里弹出来,看log应该是模拟器图形内存的问题。不过遇到这种情况再运行一次就好了。
3.模拟不了kindle,应该是因为kindle的系统高度自制的原因吧。
Genymotion的中文官方http://www.genymotion.cn/
使用前需要注册一个账号,而且要装Virtual Box虚拟机,很简单,网上教程很多。
总结:
说了这么多,目的还是和上次的Android Studio那篇文章一样,就是希望没用过的都来试试。
最后放几张关于Genymotion的使用图片。
最初运行Genymotion是没有Google框架和服务的,装好gapps后就多了Google Play,Google+,Gmail等应用
Google+
Gmail截图
Google Play截图
facebook截图。大家有的话可以加我好友啊,哈哈。。。
关于ANDROID模拟器的一些事