今天想做一个测试android小知识点,结果遇到一个问题:
错误信息:
[2016-01-06 14:11:18 - Note] The connection to adb is down, and a severe error has occured.
[2016-01-06 14:11:18 - Note] You must restart adb and Eclipse.
[2016-01-06 14:11:18 - Note] Please ensure that adb is correctly located at 'D:\Users\LYP\AppData\Local\Android\sdk\platform-tools\adb.exe' and can be executed.
说实话这个问题,以前就遇到过,按照它的提示 重启一下adb或者eclipse, 有时候,可以解决,有时间不可以,今天没什么事情,就想彻底把它解决到底!
于是我就按照自己的想法和提示一个一个的试验:
1、我重启了adb 和eclipse ,而且 还把任务管理器中的adb杀死,然而并没有什么用
2、根据提示,我查看一下,自己的path路径,并没有什么问题, 并且我还adb kill-server adb start-server
3、我自己明显解决不了,上网吧
以上是我以前解决的方式,刚刚都试过了,并什么用,然我奇怪的是:任务管理器中并没有adb.exe,接下来,我会为此说明,为什么没有adb.exe
我上网,找了很多,都是我以前,试过的,也很没有用,最后,我还是找到了解决稻草!一个陌生人写的博客,之所以是陌生人,是因为我不认识、从它的文章中,得知,没有 在任务管理器中找到adb.exe, 是因为模拟器的adb端口被占用,哇!是这个问题,让我这个菜鸟,忙了半天,可是问题又出现了。adb的端口?那如何找到被占用的应用程序呢,再如何杀死呢?
先学习命令吧,再说,不然往下面看,也没有意思
netstat [-a][-e][-n][-o][-p Protocol][-r][-s][Interval]
这是做什么呢,这个命令是很强大的,但我们目前知道一个就可以了,她是可以查看端口的信息了
命令中各选项的含义那就请君自己百度吧
我就介绍3个有用的
netstat -ano
-a 显示所有socket,包括正在监听的
-n 以网络IP地址代替名称,显示出网络连接情形
-o 显示拥有的与每个连接关联的进程 ID
.查看指定端口的占用情况
netstat -ano|findstr "7053"
可以看到一条记录,就是这个记录的应用程序,占用了我们的adb端口,我们把她映射一下
tasklist|findstr "pid" : pid是刚刚显示的应用程序
得到她的应用程序的exe名字,然后去任务管理器,把她杀死就ok
最后: adb kill-server
adb start-server
重启eclipse就可以了
谢谢,你的足迹,我的成长,一个不懂程序的程序员