adb

adb

今天更新了android sdk,发现在原来可以正常连接Genymotion现在连不上了。

1. adb连接不上Genymotion问题。

我在Genymotion上配置的是我自己android sdk目录,没有使用Genymotion自带的adb。
分析认为Genymotion 2.8.0中要使用低版本的adb才可以。我测试关掉Genymotion杀掉所有adb进程。
Genymotion中配置自带adb,再使用自带adb,是没有问题,可以连接设备的。换了我自己android sdk就不行了。

网上其它分析是修改adb 默认端口5037, 其实这个没啥用。

1
lsof -i:5037
1
export ANDROID_ADB_SERVER_PORT=6037

虚拟机跟主机也是通知socks通讯的,只要找到虚拟开启那个端口就可以adb connect上了
解决方法:
运行Genymotion Shell, 查看ip地址.

1
2
3
4
5
6
7
8
9
Genymotion Shell > devices list
Available devices:

Id | Select | Status | Type | IP Address | Name
----+--------+---------------+----------+-----------------+---------------
0 | * | On | virtual | 192.168.57.101 | Custom Tablet - 7.1.0 - API 25 - 1536x2048
1 | | Off | virtual | 0.0.0.0 | Google Nexus 5 - 6.0.0 - API 23 - 1080x1920
2 | | Off | virtual | 0.0.0.0 | nox
Genymotion Shell >
1
2
$ adb connect 192.168.57.101:5555
$ adb devicead

参考: https://stackoverflow.com/questions/17530181/genymotion-android-emulator-adb-access

还可以配置VBox,使用起来更简单

1.1 安装Genymotion-ARM-Translation

  1. 下载对应的https://gitee.com/wv24/share
  2. 不能直接拖拽安装,命令行安装:
1
2
3
4
5
6
7
8
9
adb push ARM_Translation_Marshmallow.zip /sdcard/
adb shell
cd /sdcard/
sh /system/bin/flash-archive.sh ARM_Translation_Marshmallow.zip
...
### 也可以这么玩;

adb shell /system/bin/flash-archive.sh /sdcard/gapps-x86-6.0_20160402.zip
adb shell /system/bin/flash-archive.sh /sdcard/SuperSU_v2.65_20160402.zip
  1. 重启模拟器。

2. 夜神模拟器 adb连接问题。

在Genymotion实在用不了的情况下,尝试国产神器夜神模拟器。
原因: 夜神bin目录下的nox_adb.exe, 同样问题adb版本不一样;
参考: https://www.cnblogs.com/cnhkzyy/p/9308061.html

1
2
3
adb connect 127.0.0.1:62001
adb devices