项目开发中经常需要使用adb命令进行调试,当手机连接电脑,准备使用adb shell命令是,出现如下错误
C:\Users\hzk\ adb shell
error: more than one device/emulator
从错误提示看出,是电脑上连接多个设备,导致adb shell 命令不知道操作哪一个,才爆出错误,使用adb devices查看一下:
C:\Users\hzk\ adb devices
List of devices attached
emulator-5570 host
2f54ee0 device
emulator-5562 host
emulator-5578 host
果然出现了好几个设备,如果想针对特定设备调试,就需要为adb命令指定设备的名称,比如针对设备2f54ee0调试:
C:\Users\hzk>adb -s 2f54ee0 shell
shell@NX511J:/ $
这样就可以正常调试了,
如果采用上述方法还是有问题,建议使用如下方案:
// 先把adb server杀掉
C:\Users\hzk>adb kill-server
// 重新启动adb server
C:\Users\hzk>adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
C:\Users\hzk>adb devices
List of devices attached
2f54ee0 device
// 重新使用adb shell命令
C:\Users\hanzhikun>adb shell
shell@NX511J:/ $
注:我本机上当前只有上面一个设备,第一次列出的设备有四个,这种情况下可以看出,ADB出现了Bug,导致设备列表显示有错误