需要测试Android 5.1系统重启后的一个功能,我手里的设备都没有这么高的版本,那么只好向模拟器求助了。就像大多网友一样,我遇到了一个大问题,如何将Android模拟器重启?
我有几个想法:
* 长按模拟器的power kay,调出重启键。可惜的是系统默认只有poweroff一项。
* adb reboot或者adb shell进入模拟器再执行reboot。尝试了几个模拟器,都没有成功,只听见我本子的cpu风扇在飞速的运转着。
* 自己写一个重启的小应用做重启这件事。这是几年前我就想写的程序了,可惜Android并没有放开接口。普通应用做不到。
就这样,几个点子都点不亮,怎么办呢?那就试试第三方的模拟器Genymotion吧!下面就是我抱着试试看的态度,一步一步走下去,没想到有个完美的结局。
Genymotion是一个口碑非常好的第三方Android模拟器,不过要使用高级的功能是要包月花钱的,如果只是基本的测试要求,免费的个人版也能帮上忙。官网是https://www.genymotion.com/,下载和使用需要先注册帐号。
起初我以为口碑这么好的工具,安装应该事件非常easy的事,但没想到我安装遇到了很多问题。
需要先安装virtualbox.这个当然是越新越好,我之前安装的4.3.26足够用。版本过低是无法使用或效率有问题。ubuntu下用dpkg安装deb包即可。
注册帐号,并下载相应的bin包。(这个bin包当时我还真不清楚如何处理,最后问网友才知道是可执行的)
我的系统是ubuntu14.04,下载后执行:
$ ./genymotion-2.4.0_x64.bin
生成genymotion文件夹,里面的内容如下:
$ ls genymotion
crypto lib64OpenglRender.so libQtWebKit.so.4
device-upgrade libavutil.so.51 libQtXml.so.4
genymotion libcrypto.so libssl.so
genymotion-shell libprotobuf.so.7 libswscale.so.2
genymotion-tool libqca.so.2 player
genyshell libQtCore.so.4 plugins
icons libQtGui.so.4 sqldrivers
imageformats libQtNetwork.so.4 tools
lib64EGL_translator.so libQtScript.so.4 translations
lib64GLES_CM_translator.so libQtSql.so.4
lib64GLES_V2_translator.so libQtSvg.so.4
执行
genymotion$ ./genymotion
报错说virtualbox engine not load.
解决如下:
$ /etc/init.d/vboxdrv status
VirtualBox kernel module is not loaded.
$ sudo /etc/init.d/vboxdrv setup
[sudo] password for linc:
Stopping VirtualBox kernel modules ...done.
Recompiling VirtualBox kernel modules ...done.
Starting VirtualBox kernel modules ...done.
$ /etc/init.d/vboxdrv status
VirtualBox kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) are loaded.
这次再执行./genymotion就会正常启动了。
然后进入到添加设备阶段,需要登录,就遇到“genymotion unknown generic error“了。真是够不幸的,一天时间就要这么浪费下去吗?我还能否顺利的使用你呢?
也许是网络的问题,官网都非常慢。想登录一下也没有反显,用户体验真是不太好。
这个错误并不是网上说的那样需要设置vitualbox里设置虚拟机的网络配置,因为现在我们还没有任何虚拟机。这只是一个普通的网络原因造成的连接中断,多尝试几次没准就登录上去了。我试了超过5次才行。
登录后会出现可以下载的设备列表,我选择了6儿子,系统信息如下图:
接下来就是下载的过程,个人感觉速度还可以。
那么启动这个模拟器看看吧!速度真是没得说,十分迅速!
右侧是一些功能列表,但好多功能只有付费才能用。
现在咱们再看看virtualbox里是否也有这个虚拟机呢?如下图:
终于成功的启动期待的模拟器了,赶快尝试一下reboot十分好用。当然是用命令行来了,adb reboot和adb shell后执行reboot都可以成功的将模拟器重启。
漂亮!下面就可以用它来测试我要的功能了!
Android实战技巧之二十五:模拟器如何重启?试试Genymotion!
原文地址:http://blog.csdn.net/lincyang/article/details/45270721