1. 为什么要使用Genymotion?

使用Genymotion的目的可以归为3类:

  • Android 软件开发调试
  • Android 软件测试
  • Android 软件的演示和体验

在进行Android软件的开发,调试和测试中,通常会使用模拟器和真实的物理设备。但因为真实的物理设备的成本和root权限的限制。在开发阶段,我们会经常使用虚拟器。而Android Developer Tool自带的虚拟器性能并不好,有时在显示上和真机还是会有差别。

在这种情况下,部署在成熟虚拟机(VirtualBox, VMware)上的Android系统可以有较好的性能提升。我开始试用过Android-x86但在安装和运行时都会有一些问题,如VMWare启动失败;Android-x86 on VirtualBox黑屏无法唤醒。如果肯花功夫,一些问题应该可以解决。可是关键就是时间。造一辆车的时候,我们不可能去先去修理一大堆的扳手。

2. 安装和使用

(访问官网资源前需要注册)

安装链接:https://cloud.genymotion.com/page/launchpad/download/

文档: https://cloud.genymotion.com/page/doc/

基本的安装过程是:

安装Genymotion。然后启动Genymotion,使用注册的帐号去下载需要的虚拟机image。在下载image的同时,可以安装集成开发环境的插件。这个步骤不是必需的。但如果你觉得集成在开发环境里面比较方便还是值得安装尝试下。我习惯在adb的命令行里面去连接、查看设备。在adb里面能看到一些信息和状态,还是要感觉踏实一些。

3. 常见问题

3.1 ADB 无法连接连接Android虚拟机

我在从宿主机连接Android虚拟机一直连不上,Google的很多资料,做了很多尝试,仍未解决。真是百撕不得其解啊。每次VirtualBox进去都提醒我安装新版本,就更新了一下。问题也随之解决了。VirtualBox目前的版本是4.2.16.

Andorid虚拟机启动起来后,验证是否能连接上的命令是: adb connect 192.168.56.101. 在不同虚拟机上需要运行Genymotion Configuration查看host-only的ip,用它来替换命令中的ip.

另外,AndroVM的虚拟机image也可以用Genymotion启动和连接调试。但会提醒版本不同,可以会出现兼容问题。

3.2 使用Genymotion的play启动虚拟机后长时间一直黑屏

如果此时你打开VirtualBox,在它的preview里面看见了待机画面,说明虚拟机已经启动完毕,只不过player得不到它的状态。所以化繁为间,毕竟Genymotion是依赖于VirtualBox工作,不如直接通过VirtualBox控制台启动虚拟机。只不过这样做,需要通过adb命令行做一些额外的工作:

连接虚机:adb.exe connect [虚机IP]进入root: adb.exe root再连接虚机:adb.exe connect [虚机IP] // 还没有探究为什么要再次连接,但必须这么做现在就可以调试了。

更多相关文章

  1. Android(安卓)iOS测试区别
  2. 关于android开机速度性能方面
  3. Android之Adapter:连接后端数据和前端显示的适配器接口
  4. Android内核开发:学会分析系统的启动log
  5. 解开Android应用程序组件Activity的"singleTask"之谜(1)
  6. 基于Xmpp,Openfire和Asmack的聊天软件的开发(一)
  7. Android从开机到打开第一个应用发生了什么?
  8. Android中Activity的四种启动模式
  9. 第一章 Android系统介绍

随机推荐

  1. Android常见问题总结(四)
  2. Android(安卓)Studio 快速入门详解
  3. Android消息机制探索(Handler,Looper,Mes
  4. .net平台借助第三方推送服务在推送Androi
  5. Android中的sp和dp的区别
  6. android,内存优化详解
  7. android效率为什么这么的高呢
  8. android进程间服务通信示例
  9. Unity3D研究院之与Android相互传递消息(十
  10. Android(安卓)内存优化