做Android开发连接手机调试时,明明已经打开了开发模式,允许USB调试,连接上手机后仍然无法发现设备,在控制台中输入adb shell后报错error:device not found。网上的做法大致分为:
1、adb kill-server来杀死adb进程,然后再使用adb start-server命令来开启;
2、检测5037端口(adb.exe默认端口)是否被占用,关闭除adb.exe以外占用了5037端口的进程,重新开启adb服务:
2.1、adb nodaemon server:检测5037端口是否被占用;
2.2、netstat -ano | findstr “5037”:查看是什么进程占用了5037端口;
2.3、tasklist | findstr “21152”:查看这个进程是由哪个程序创建的(21152就是占用5037端口的一个进程的PID);
2.4、taskkill /f /pid 21152:将进程关掉;
2.5、adb devices:显示当前连接设备。
在cmd中输入adb shell进入linux shell环境前,需要把android模拟器打开(本文都是针对模拟器而言,并非真机)。如果启动好了模拟器,且输入adb shell命令后出现error: device not found错误提示,则可以杀掉adb进程然后重新启动该进程,在cmd中输入如下命令:
adb kill-server
adb start-server
注意:这里着重注意,要想adb shell命令执行成功,必须要同时打开android模拟器。
这是执行成功后,以root权限进入Linux系统,可执行Linux命令。
报错2:
解决方法:jdk未安装
报错3:
解决:检查变量情况
报错4:
解决方案:appuim未启动,启动就解决了
报错5:
解决:系统变量java_home 输入错误,解决
报错6:
原因是adt-bundle-windows-x86_64-20140702文件路径配置问题,将剪切放到c盘,重新设置ANDROID_HOME即可。
报错7:
报错8: