Android开发中真机和模拟器的体验

572 查看

做移动开发总是离不开在移动设备上做测试,虽然说Android设备单机可能比iPhone便宜,但是真要各种设备集齐也是不小的开支,再加上要试验不同的Android版本那组合起来又有好多了。所以一般开发者往往只在特定几个设备中做检验。需要测试不同版本也会求助于模拟器(Emulator)

Google为Android提供的自带模拟器的效果以前实在惨不忍睹,随着Android Studio 2.0出的模拟器倒是提高了不少,但依然挺糟糕的。

大多公司都会购买Genymotion使用,可以创建多种不同版本的模拟器,即使是最新的版本也能很快支持。虽说价格抵上一部真机,却得到好多不同版本和厂商的设备,而且效果优越、功能丰富,真实物超所值。

由于某些纠纷,Genymotion默认没有Google Play Services,就无法使用Google的Play Store,Account等等。不过网上也有很多攻略教大家怎将其么安装到Genymotion上,于是都可以在上边打《炉石传说》了。

真机和模拟器各有下边这样那样的缺点:

真实设备 模拟器
  • 价格昂贵
  • 不易携带多个
  • 同一设备不支持多种版本
  • 容易没电
  • 老设备会断货
  • 无SIM卡
  • 无摄像头
  • 不支持推送
  • 多手势不方便
  • 使用习惯不一致

以前只做一些UI和Infrastructure的时候,我很喜欢使用Genymotion。既不占用USA插口,也不怕数据连接中断,还能保证在不同版本上都能进行测试,最后的效果也比较接近。而且模拟器都是有root权限,使用各种指令都很方便。安装到真机也只是为了给同事看一下效果做确认。

现在的开发工作需要用到相机,就只能使用真机来做测试。双手和双眼经常需要在键盘和手机直接来回切换,实在不方便。直到使用了Vysor,又有了使用模拟器的便利:简单的手势都能在Mac触摸板上完成,可以直接从键盘输入内容,眼睛只需停留在电脑显示器上。

更难以置信的是这么好用的程序竟然只是Chrome App,从Chrome Store下载安装就能用,而且它还是免费的。唯一的要求就是要有Chrome浏览器和Android SDK(作为Android开发者这些肯定是默认安装了的)。

即使有多个设备连接在电脑上,Vysor也可以很少的识别和操作,所以平时就可以把多个设备通过USB Hub一直连接在电脑上,需要使用时打开相应的设备即可。

Vysor还只是beta版本,所以还有许多功能可能不太稳定,我在开发过程中也碰到一些问题。但是大部分时间还是很好用的。如果是要做真机演示,那真是上上之选。