一. adb devices发现不了设备
刚试了一下,在夜神模拟器开启的情况下,adb devices 死活找不到设备
adb kill-server和adb start-server也无济于事
二. 两个不同的adb版本差异
这时候跑到夜神的安装目录D:\Program\nox\Nox\bin下,竟然发现还有一个adb
注意这个adb和我们安装的adt中的adb是不同的,adt下的adb版本是1.0.31
夜神目录下的adb的版本是1.0.36
现在就用夜神自带的adb来发现设备,adb devices执行之后有个提示:这也验证了我们上面的操作,adb server版本是1.0.31,adb client是1.0.36,版本不匹配
三. 如何解决
第一种方法
在cmd里直接执行命令:adb connect 127.0.0.1:62001
第二种方法
1. 任务管理器里看下,adb.exe以及nox_adb.exe这2个进程有没有在运行?有的话就结束掉
2. 找到开发环境的SDK的目录和夜神模拟器的目录,将SDK\platform-tools下的adb.exe文件,替换夜神模拟器bin目录下的adb.exe,再将SDK\platform-tools下的adb.exe拷贝一份,重命名为nox_adb.exe,替换夜神bin目录下的nox_adb.exe
替换完检查一下,没毛病
3. 这样就将开发环境的SDK目录的adb文件和模拟器目录下的adb文件完全同步了,版本号也一致了,这时你去命令行窗口就可以看到设备信息了
四. 总结
个人比较喜欢第一种方法,简单粗暴,如果太懒,连cmd都不想打开,可以写一个批处理文件放在桌面上,名字是yeshen.bat
yeshen.bat内容只有区区两行
1 adb connect 127.0.0.1:62001 2 cmd /k
双击自动运行之后会自动执行adb connect 127.0.0.1:62001来检测设备,你可以不用一个个敲命令,cmd /k的意思是自动保留cmd窗口(k—keep),不至于批处理一执行完cmd窗口就关了
参考文章
https://blog.csdn.net/cz9025/article/details/78665223
https://blog.csdn.net/leon1741/article/details/54896861
http://www.mamicode.com/info-detail-1537597.html