簡體   English   中英

亞行將無法啟動

[英]Adb won't start

運行Vista,嘗試以shell身份以admin get守護程序啟動adb而不是立即啟動

ADB server didn't ACK
* failed to start daemon *

有什么幫助嗎?

這個問題困擾了我很長時間。 除了上述答案之外,請使用以下提示:

  • 使用以下命令創建一個bat文件並運行它。 這個蝙蝠文件將解決您的大多數adb問題。

tskill adb

cd \\工具\\

亞行殺害服務器

亞行啟動服務器

ddms

  • 使用命令netstat監視連接狀態(adb使用5037)

  • 如果bat文件不起作用,請嘗試:斷開連接-重新引導電話連接。 (提示:如果adb根本沒有響應,請使用“ adb reboot”,如果沒有,則使用老式方法)

  • 有時Windows可能很有趣。 重新啟動機器。

  • 打開USB調試模式

    • 下載Android SDK並解壓縮
    • 從設備管理器中卸載所有“ Android *”
    • 從控制面板中執行“添加硬件”,選擇“安裝硬件...(高級)”
    • 選擇“ Android USB設備”,然后單擊“下一步”
    • 單擊“從磁盤安裝”,然后輸入解壓縮SDK的路徑。
  • 還是行不通 ? 恢復手機出廠設置。

  • MTP檢測會延遲ADB。 有時,如果需要啟動時間日志,則可能必須在設備管理器(Windows)中禁用MTP驅動程序


當您收到錯誤消息時, 這是 adb 的絕妙補丁

Adb連接錯誤:現有的連接被遠程“

我無法使用adb。 我在命令行和Eclipse中都遇到了以下錯誤。

* daemon not running. starting it now on port 5037 *
ADB server didn't ACK<br>
* failed to start daemon *

也就是說,即使重新啟動后, adb start-server也會失敗。 為了診斷問題,我發現您可以使用以下參數運行adb:

adb nodaemon server

並且它將打印出無法運行的原因。 就我而言,它是adb_usb.ini文件中的空白行。

您可能在內存中adbadb守護程序的復制副本。 嘗試使用任務管理器將其刪除,或重新啟動,看看是否有幫助。

對於使用Android Studio和MAC的用戶。 這對我有用:

  1. 在Android Studio中:工具-> Android->取消選中“啟用ADB集成”
  2. 在終端中:“ adb kill-server”
  3. 在Android Studio中:工具-> Android->選中“啟用ADB集成”
  4. 在終端中:“ adb啟動服務器”

最佳答案是特定於Windows的,但是它具有相當大的Google可見性,因此,如果您正在運行類似* nix的計算機(我在Mac上),則步驟類似:

$ killall adb
$ cd <PATH_TO_SDK>/platform-tools/
$ adb kill-server
$ adb start-server

或者,如果您像我一樣,只是想訪問adb,無論當前目錄如何,請添加

export PATH=${PATH}:<PATH_TO_SDK>/platform-tools/

到您的~/.bash_profile

> killall adb

> adb start-server

重新啟動Eclipse。

基本上adb在您的機器上的另一個進程上運行,您需要將其終止,然后再次啟動守護程序,因為它們都試圖綁定到同一端口(:5037)。 就我而言,我又打開了一個窗口:5037,卻忘了它。 想知道為什么我不能像往常一樣停下來並開始。 通過“ killall”,您可以確保終止所有進程。 您還可以進入CPU的進程並強制退出。

1. $ apt-get刪除android-tools-adb

2. $ cd $ PATH_TO_SDK / platform-tools /

3. $ ./adb設備

您將看到以下內容:

  • 守護程序未運行。 立即在端口5037上啟動*無法綁定'tcp:5037'ADB服務器未確認*無法啟動守護程序*

那說明什么錯誤。

現在您重置PC,一切正常。

要么

# lsof -i:5037

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

wineserve 3609 root 268u IPv4 20118 0t0 TCP localhost:5037 (LISTEN)

# 

您將知道使用哪個軟件的端口。

為了避免這種情況,只需在host_config.xml中更改以下值:

<!-- Number of tests executed between reboots. A value <= 0 disables reboots. -->
<IntValue name="maxTestCount" value="10000" />
<!-- Max size [tests] for a package to be run in batch mode. -->
<IntValue name="maxTestsInBatchMode" value="100000" />

<!-- Max time [ms] between test status updates. -->
<IntValue name="testStatusTimeoutMs" value="600000" />
adb nodaemon server

幫助。 就我而言,我已經編輯〜/ .android / adb_usb.ini,並在末尾添加了0x1949以在Kindle Fire上啟用調試。 遺憾的是,它無法處理我在0x1949之后輸入的換行符

我有同樣的問題。 我沒有正確地編輯adb_usb.ini文件(文件末尾有兩個回車...是的,這很難找到。)

該文件位於與/ Users / {用戶名} /。android / adb_usb.ini類似的位置

(將{user-name}替換為您自己的用戶名)

確保文件完全讀取(之前或之后沒有空格/回車符/換行符):

“#ANDROID 3RD PARTY USB供應商ID列表-請勿編輯。”
'#使用'android update adb'生成。”
'#1每行USB供應商ID。”

(重要!!!實際文件中沒有'(撇號),這是我張貼此文件的唯一方式,它不會將#解釋為BOLD。)


希望可以幫助某人

如果您使用的是Android Studio,

  • 您打開了“設備選擇器”對話框
  • 您嘗試從命令行運行“ adb設備”

每次導致以下錯誤

adb server is out of date.  killing...
cannot bind 'tcp:5037'
ADB server didn't ACK
* failed to start daemon *
error:

解決方案 (輕松快捷)

關閉“設備選擇器”對話框。 我的猜測是,它試圖以一種非常密集的方式接管adb連接

我現在面臨這個問題與Genymotion,所以我把它換成這是adb與我目前的adb 以供參考:

cd $GENYMOTION_HOME\tools
mv adb adb-old
ln -s $ANDROID_SDK\platform-tools\adb adb

還有另一種可能性。 如果您安裝了任何權限管理器,例如Advanced androidPermission manager,則adb可能會失敗。 卸載了該應用程序,然后沒有問題。

看起來是一樣的,但是有時候,命令adb kill-server無效(至少在我而言)。 因此,我嘗試了其他方法。

您可以通過以下方式檢查: https : //stackoverflow.com/a/34627522/5597864

在控制台中,嘗試:

taskkill /F /T /IM adb.exe

進行多次,直到顯示ERROR: The process "adb.exe" not found. 然后

adb devices

adb服務器未運行。 您可以在Windows中打開命令行窗口以檢查哪個進程正在使用5037端口,請記住進程號。

netstat -ano |findstr "5037"

然后使用Ctrl + Alt + Delete來打開進程管理器,以殺死擁有5037端口的進程。 您可能需要嘗試幾次,直到5037端口可以免費使用。

打開命令,在您的adb.exe文件中定位。進入命令adb kill-server adb start-server上的文件

當它另外表示adb server is out of date. killing... adb server is out of date. killing...為您殺死它。 問題是它一旦被殺死就會重新啟動。

因此,您應該考慮在adb.exe地方找到adb.exe 要做到這一點,最簡單的方法是打開Task Manager ,找到一個adb.exe過程- > RMB - > Open file location - >刪除它從那里。 除非不需要它,否則在這種情況下,您應該對其進行更新。 就我而言,它在C:\\Windows\\並隨Visual Studio一起提供。

如果出現錯誤, cannot bind 'tcp:5037'並且您使用的是任何Linux發行版,例如Ubuntu,

殺死舊的ADB進程:

fuser -n tcp -k 5037

這將殺死端口5037上的adb進程,然后,

啟動亞行:

adb start-server

通常,這里給出的答案對我有用,但今天卻沒有。 通過將仿真器和SDK從SDK管理器更新到最新版本,解決了我的問題。

在Mac或Unix上

對於在Mac或Unix上來這里的人來說,以下方法對我有用:

adb kill-server
adb server

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM