1、adb logcat 命令的時候,cmd總是提示adb server did't ACK.
分析一下,明顯adb server沒有開啟成功,服務啟動失敗一般都是端口綁定失敗,所以我們只有釋放占據改端口的程序即可
1、adb nodaemon server 命令查看一下,這時cmd輸出:can't bind tcp:5037
2、netstat -ano|findstr "5037"查看一下什么進程占了5037端口
3、從列出的列表里面找到TCP 0.0.0.0.0 程序的PID,比如PID為1234
4、殺死該進程,有兩種方法,一是啟動任務管理器,查看->選擇列->勾選PID,找到PID為1234的進程殺死,二是直接cmd:kill -9 1234
5、重新插拔設備
2、adb logcat 和adb shell 的時候,cmd總是提示wait for devices.
起先我並沒有注意到這個是問題,我以為是時間問題,然后等了半天還是wait for devices .我就納悶了,難道我設備沒有連接上?看了一下手機,明顯是連上了啊,在試了一下手機助手,也能連上啊,為什么adb就是找不到設備呢。為了證實我的想法,我就adb devices了一下。果然:

根本就沒有設備。
於是網上找了半天解決辦法,剛好講述這些奇葩的經歷。我嘗試的四種方法如下:
一、重啟adb服務
adb kill-server,adb start-server,adb devices。很可惜,失敗了,傳說中最靠譜,解決了大多數問題的辦法在我這失效了。
二、虛擬設備
看到了很多人說這種時候必須要啟動虛擬機才能找到,抱着懷疑的態度我試了試

至此,我覺得我對那些網上瞎喊的人(還不止一個)完全沒愛了,確定這不是再逗我?說好的我的真機設備呢?冷靜下來一想突然就覺得自己活該,adb真機調試本要就要求僅有一個安卓設備連接,不然會端口搶占,本來一聽說要啟動虛擬機,我就該否決的,不該隨流病急亂投。
三、usb驅動
想了半天,都找不到原因,我只好歸結為驅動的錯了。於是我特地去找了個adb shell驅動,放到了c盤win32下。一放下我就后悔了,尼瑪啊
,手機助手都能連上,明顯不是驅動的問題啊,不然人家怎么能安裝的上。。。。。。我又腦殘的無用功了。不過算了,當有備無患吧。。
附上博主分享的驅動地址:http://pan.baidu.com/s/1qW7JdTy
四、添加真機設備硬件ID
尋遍網絡,最后找到一個近在眼前的辦法。。。
1、右擊我的電腦,然后找到設備管理器打開。

2、找到設備ID

3、C盤 Administrator\.android>下找到或新建一個adb_usb.ini文件。
4、把VID的數值寫入到adb_usb.ini 里面。就是0xVID(0x1BBB)這6個字符即可。

5、cmd上輸入adb kill-server 然后重新拔插usb線之后,就可以連接adb 了。

至此,問題解決,adb logcat 和adb shell 別提跑的有多溜了~