在命令行(就是开始——运行——输入cmd)模式下输入adb shell命令一般会报两种错误,一是“adb不是内部命令或外部命令,也不是可运行的程序或批处理文件”,二是“error:device not found”。
对于第一种错误,是因为环境变量没有配置。所谓环境变量,就是各应用程序要用到的信息,这里主要是没有配置Path路径,Path就是.exe和.bat程序执行的路径。因为在命令行中输入命令时,计算机会先在当前目录(一般是C:\User\Administrator)寻找adb.exe程序,如果没有找到,就会通过环境变量中的Path查找(Path中各路径之间以英文格式的;分隔开),如果Path中各路径下都没有adb.exe程序,就会报“adb不是内部命令或外部命令,也不是可运行的程序或批处理文件”错误。解决办法有两种:一是将adb.exe的路径加入到Path路径中,adb.exe位于sdk目录下的platform-tools下,比如我的Android SDK文件位于D:\Android下面,则正确的Path路径应该是“D:\Android\android-sdk-windows\platform-tools”。将这串字符追加到系统或用户环境变量的Path下面就可以了;二是先在dos环境下进入patform-tools目录下,以我的机器为例,使用“cd D:\Android\android-sdk-windows\platform-tools”命令进入到platform-tools目录下,再使用“dir”(Windows下)就可以看到列表中有adb.exe文件了,这时再执行“adb shell”命令就可以了。
对于第二种错误,是因为没有打开Android虚拟机。因为adb shell命令实际上是对当前虚拟机进行操作,需要进入当前虚拟机的文件结构。如果没有打开虚拟机,本命令当然会报“error:device not found”(就是没有找到设备)的错误了。解决办法就是打开虚拟机,确保已解决第一种错误,输入adb shell就可以正常进入Android虚拟机的结构了。