标签:
Genymotion是 android的模拟器,比起Android Virtual Device,genymotion的速度很快的。
官网下载地址为:http://www.genymotion.com/
个人网盘地址: http://pan.baidu.com/s/1bZYmcA
下载完成后,点击genymotion-2.5.3-vbox.exe下一步下一步直接安装,见安装的截图:
一直点击Next。
点击Install,genymotion安装过程中,会自动安装VirtualBox,见截图:
点击Next,默认安装。安装完成后,点击桌面图标启动Genymotion,见启动的截图:
初次启动的时候,会监测启动的环境,监测完毕后,出现genymotion的界面,表示安装完成。
Genymotion添加模拟设备步骤:
第一次进入Genymotion,会检查你是否有安卓虚拟设备。如果没有会弹出对话框,询问你是否现在添加一个虚拟设备,点击yes就可以了。
2.创建一个新的虚拟设备
创建一个新的虚拟设备[Create a new virtual device]。
需要你输入用户名和密码验证,如果没有需要去官网注册一个账号。
注册地址:https://www.genymotion.com/account/login/
3.验证成功后,可以看到有很多虚拟设备,如:S3,S4等
选择想添加的虚拟设备,选择后点击下一步。
4.在Adroid version 里有不同的Adroid 版本,可根据测试需求去过滤,Device model 里有不同的品牌机型,也可以根据测试需要进行列表过滤选择。
5.个人选择Adroid version:4.4.4,型号:Nexus, 点击Next直接安装。
6.设备的名称比较长,为了后续使用,可以重命名。
点击Next,就会进行安装,见安装的截图:
7.安装完成后,点击Finish,见截图:
备注:安装过程,由于网路等各种原因,可能会添加失败,如果添加失败就需要重新添加。
8.根据测试需求,可以点Android模拟器的设置按钮进行相关的设置,如下图。
9.启动Android模拟器
选择刚创建的Android模拟器:ybji,点击Start。
启动后的截图:
【General】常规项,默认设置即可。
【Account】账户管理项,默认设置即可,需要切换用户时,可重新设置。
【Network】网络项,默认设置即可,需要用代理上网,设置代理。
【VirtualBox】模拟器存放路径,默认设置即可。
【ADB】ADB设置项,在genymotion的设置中配置ADB的路径为android sdk的路径,勿要使用default的配置,本人电脑sdk的路劲为: E:\adt\sdk,所以在Android SDK配置路径为E:\adt\sdk,见配置的截图以及说明:
在这里详细的解释下为什么需要这样的配置。andrid sdk中adb.exe在platform-tools的目录下,adb.exe程序占用的端口为5037,见查询的结果:
从如上的截图中,可以看到adb.exe程序占用的程序端口为5037,安装最新版本的genymotion后,在Genymotion的目录Genymotion\tools下也有adb.exe的程序,如果genymotion使用默认的配置,也就是使用genymotion自带的adb.exe,会导致genymotion自带的adb.exe占用5037的端口,而android sdk中的adb.exe程序因为端口被占用,而无法启动,需要配置未被占用的端口,genymotio配置中指向android sdk的路径后,这样就不会出现5037被占用的情况。
备注:ADB设置项设置完成之后,需要重启电脑,不然5037会被之前的adb.exe程序占用,查看Android模拟器设备会提示找不到,如下图:
在Android模拟器上安装APK步骤:
1.在Android模拟器上安装APK之前需要先在在Android模拟器上安装。Genymotion-ARM-Translation插件。
点OK
提示安装成功,点OK完成。
完成之后需要重新启动模拟器。
2.安装apk
1)在DOS下通过ADB命令查看Android模拟器设备是否连接成功。
adb devices
2)在DOS下输入:adb install E:\apk\baiduyun.apk 进行模拟器的APK安装。
3)在模拟器安装APK。
点百度云,启动apk。
安装APK过程出现问题以及解决过程:
1.服务启动失败的原因有很多,但一般是端口绑定失败。我们通过命令来查看一下端口绑定信息。如图所示,真的是端口绑定出了问题。
命令: adb nodaemon server
2. 我们通过命令来看看哪个服务占用了这个端口。
C:\Users\lizy>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0
LISTENING 8516
TCP 127.0.0.1:5037
127.0.0.1:59163 TIME_WAIT 0
TCP 127.0.0.1:5037
127.0.0.1:59164 TIME_WAIT 0
3.
通过命令再查看是那个进程。
C:\Users\lizy>tasklist
| findstr "8516"
sjk_daemon
8516 Console
1
3,071 K
原来是sjk_daemon进程占了adb的端口
4.用tasklist命令查看进程
Image Name
PID Session Name
Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services
0
24 K
System
4 Services
0 1,128 K
sjk_daemon
963 Console
1 3,071 K
tasklist.exe 1260
Console 1
5,856 K
5.将这个进程kill掉。
C:\Users\lizy>taskkill /f /pid 963
备注:如果这个命令提示无权限,那么,可以去windows的“任务管理器”中“进程”那个窗口,找到这个进程,将它杀掉。
6.再运行adb devices,就没有问题了。
C:\Users\lizy>adb devices
4df7f482396a301d device
标签:
原文地址:http://www.cnblogs.com/tinghai8/p/5848984.html