真機調試adb:wait for device 解決方案


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 別提跑的有多溜了~
                       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM