Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android:ADB server didn't ACK或者adb server is out of date. killing解決辦法

Android:ADB server didn't ACK或者adb server is out of date. killing解決辦法

編輯:關於Android編程

出現這個原因我個人感覺有兩個。一、5037端口被別的程序或者進程占用;二、adb占用的不是5037端口。很多人僅僅知道第一種二忽視了第二種。

不管哪個原因,解決問題的辦法都一樣。這裡做一個整理如下:

 

1. 錯誤信息:

C:\Users\lizy>adb devices

adb devicesadb server is out of date. killing...

ADB server didn't ACK* failed to start daemon *error: unknown host service

 

2. 原因:

adb的端口(5037)被占用了。

3. 解決方法:

在cmd窗口:
C:\Users\lizy>adb nodaemon server
cannot bind 'tcp:5037'


C:\Users\lizy>netstat -ano | findstr "5037"
TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 8516
TCP 127.0.0.1:5037 127.0.0.1:59163 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:59164 TIME_WAIT 0
TCP 127.0.0.1:5037 127.0.0.1:59167 TIME_WAIT 0
......
C:\Users\lizy>tasklist | findstr "8516"
sjk_daemon
8516 Console 1 3,071 K

哦,原來是sjk_daemon進程占了adb的端口。

C:\Users\lizy>tasklist




Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 24 K
System 4 Services 0 1,128 K
sjk_daemon 963 Console 1 3,071 K
tasklist.exe 1260 Console 1 5,856 K


將這個進程kill掉:
C:\Users\lizy>taskkill /f /pid 963

如果這個命令提示無權限,那麼,可以去windows的“任務管理器”中“進程”那個窗口,找到這個進程,將它殺掉。


再運行adb devices,就沒有問題了。
C:\Users\lizy>adb devices
4df7f482396a301d device

 

最後別忘了重啟eclipse和模擬器。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved