无法连接原因
由于夜神模拟器和安卓都要占用5037端口,当用户先打开其中一个应用时,这个应用就优先使用5037端口。
因而产生以下两种情况:
- 当夜神模拟器先启动时,夜神模拟器会优先使用5037端口,此时再启动AS(Android Studio),由于5037端口被占用,AS会疯狂重连,具体表现从AS的日志窗口可见
- 当AS先启动,并在项目加载完毕时,再启动夜神模拟器,连接正常。
解决方案一
1.参考自 https://blog.youkuaiyun.com/Faker__?spm=1001.2101.3001.5343
当夜神模拟器比AS先启动时,AS检测不到夜神模拟器,可以使用命令行手动将夜神模拟器链接到AS。以下是我写的快速链接夜神模拟器到AS的DOS命令文件。
@echo off
::夜神模拟器适配Android Studio
::以下内容请根据本机实际情况更改
::d是夜神模拟器所在的驱动盘
d:
::再定位到夜神模拟器的bin目录
cd D:\Program Files\Nox\bin
nox_adb.exe connect 127.0.0.1:62001
@echo 适配完毕
pause
使用方法
- 新建(.txt)文件
- 粘贴代码
- 另存为(XXX.bat)文件,编码选择ANSI (其他编码也能正常运行,就是最后中文提示适配完毕时会乱码罢了)
- 运行该批处理脚本,并重启夜神模拟器,AS就能检测到夜深模拟器了。
执行成功如下:
方案二
等待几分钟,AS得不到5037端口会疯狂重连,总有连上的时候。
方案三
重启,下次启动时先启动AS,带项目加载完毕后再启动夜神模拟器。