SDKを更新すると、Eclipseに次のエラーが表示されます。
ADBサーバーはACKを行わず、デーモンを起動できませんでした。
Androidアプリケーションを実行すると、次のようになります。
adbが「D:\ android-sdk-windows \ platform-tools \ adb.exe」に正しく配置され、実行できることを確認してください。
この問題を解決するにはどうすればよいですか?
SDKを更新すると、Eclipseに次のエラーが表示されます。
ADBサーバーはACKを行わず、デーモンを起動できませんでした。
Androidアプリケーションを実行すると、次のようになります。
adbが「D:\ android-sdk-windows \ platform-tools \ adb.exe」に正しく配置され、実行できることを確認してください。
この問題を解決するにはどうすればよいですか?
回答:
おかげで、@jowett、私は同じ問題を解決し、これらの手順を実行しました
手順1: CTRL + Shift+ Escadb.exeプロセスがあり、そのプロセスを終了(kill)するタスクマネージャーを開く
ステップ2: 次に、現在コンピューターで実行されているEclipseを閉じます。
ステップ3: 再び、日食を再起動し、その問題を解決しました。
OS Xをお使いの方
killall adb
Windowsをご利用の方
adb kill-server
トリックを行う必要があります。
これらの現象は、Android Studioと同時にGenymotionエミュレーター(WindowsまたはLinux)を使用している場合に発生します。
adb server is out of date. killing...
ADB server didn't ACK
* failed to start daemon *
Genymotionには独自ののコピーが含まadb
れており、Android SDKにバンドルされているものと干渉します。
修正する最も簡単な方法は、Android SDKと同じADBを使用するようにGenymotion設定を更新することです。
[カスタムAndroid SDKツールを使用する]オプションをオンにして、目的の場所を入力するだけです。
に改行がある場合、ADBは失敗することがよくありますadb_usb.ini
。それを削除して再起動すると、問題が解決することがよくあります(少なくとも私にとっては)。
コマンドプロンプト(cmd.exe):
netstat -aon | findstr 5037
0.0.0.0のプロセスIDを見つけます。
adb.exeであることを確認します。
tasklist | findstr 1980
このプロセスを終了します。
taskkill /f /t /im adb.exe
ADBを通常の状態に戻します。
クレジット:ブログ投稿* Android ADBサーバーはデーモンを開始できませんでしたACKに失敗しました *
デバイスで同期アプリケーションを使用している場合は、同じ5037
ポートを使用している他のアプリがある可能性もあります。ポート5037
で実行されているすべてのサービスをシャットダウンし、ADBを起動してみてください。
アプリケーションがポート5037を使用しているかどうかを確認するには、次のコマンドを使用します。
netstat -a -n -o |findstr "5037"
アプリケーションのPIDを取得します。
プロセスエクスプローラーを使用してプロセスを見つけ、終了します。
次に、adb start-server
またはadb get-state
を使用して、ADBサーバーのステータスを開始/確認します。
Snappea / Wandoujia Syncアプリケーションを使用したときに問題に直面しました。
〜/ .android / adb_usb.iniの最後に余分な空白行を入力してこの問題を引き起こしました
(余分な空白行を削除すると問題が解決しました)
この問題は簡単に解決できます。
cd <platform-tools directory>
adb kill-server
adb
がまだ実行されているかどうかを確認します。もしそうなら、ただ殺すadb.exe
adb start-server
コマンドプロンプトでコマンドを実行するスマートフォンのUSBデバッグがオンになっていることを確認します。ADB kill-serverとADB start-serverは問題ではありません。
C:\Documents and Settings\Administrator> adb nodaemon server
- cannot bind 'tcp:5037'
C:\Documents and Settings\Administrator> netstat -aon | findstr "5037"
- TCP 127.0.0.1:1130 127.0.0.1:5037 TIME_WAIT 0
- TCP 127.0.0.1:1269 127.0.0.1:5037 TIME_WAIT 0
- TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 3088
- TCP 127.0.0.1:5037 127.0.0.1:1128 TIME_WAIT 0
- TCP 127.0.0.1:5037 127.0.0.1:1129 TIME_WAIT 0
- TCP 127.0.0.1:5037 127.0.0.1:1270 TIME_WAIT 0
C:\Documents and Settings\Administrator>tasklist -fi "pid eq 3088"
- Image name PID session name session # memory usage
========================= ====== ================ === ===== ============
- adb.exe 3088 Console 0 3,816 K
C:\Documents and Settings\Administrator>taskkill /f /pid 3088
- Success: terminate the PID for the process of 3,088.
C:\Documents and Settings\Administrator>adb start-server
- daemon not running. starting it now on port 5037 *
- daemon started successfully *
私はすでにこの質問に対する別の回答を投票しましたが、誰かが疑問に思っている場合に備えて、ADBを再度実行するためにEclipseを再起動する必要はありません。シェルを開いてコマンドを実行するだけです:
adb start-server
システムプロパティでADBへのパスを設定していない場合は、最初にADBが存在するディレクトリに移動する必要があります(Android \ android-sdk \ platform-tools ....でWindowsを実行していますが、マックの人々が物事をどのようにしているかを知っている)。
sysinternals.comにアクセスし、TCPVIEWとPROCESS EXPLORERをインストールします(まだインストールしていない場合)。
何らかの理由で、ADBデーモンは、ソケットのクローズ交換が完了する前に終了します。(コマンドプロンプトから) "NETSTAT -o"を実行すると、CLOSE_WAIT状態のソケット(通常は5037)と所有プロセス番号が表示されます。プロセスエクスプローラーはそのプロセスID(デーモンが終了した)を表示せず、adb.exe(ソケットを開いた)と呼ばれるプロセスはなくなります。(adb.exeが見つかった場合は、タスクを強制終了して、クリーンアップされるかどうかを確認してください。)
TCPVIEWを使用して、ハングしたソケットを見つけます。プロセス名の列には、関連するプロセスが見つからないことが表示されます。右クリックして「接続を閉じる」を選択します。これでソケットが閉じられ、adbデーモンを起動できるようになります。
同様の問題がありました。タスクマネージャーからADBプロセスの既存のインスタンスを強制終了しませんでした機能しませんでした。
ほんの数日前に、以前にMIPS SDKとADT-17をインストールしようとしたところ、Eclipseでエラーが発生しました。その問題は修正しませんでした。
それで、今、このADBサーバーがACKせず、デーモンを開始できませんでした...問題、Eclipseのヘルプメニュー項目で「更新の確認」を実行しました。利用可能な更新はありませんでしたが、少なくとも「ADBサーバーはACKを実行しませんでした」というエラーは消えました。
これがいくつかのケースで役立つことを願っています。
Androidディレクトリのパスを確認します。スペースなどを含めないでください。
また、プラグインがEclipse→ Preferencesで適切に構成されているかどうかを確認します。
私の場合、すべてを何度もチェックしましたが、それでも機能しませんでした。すべてを再インストールしようとしていましたが、このサイト(他の投稿)で回答が見つかりました。
ウイルス対策を確認してください。ポートadb.exe
やエミュレータプログラムなどをブロックしている可能性があります。これで私の問題は解決しました。
@Bastetのソリューションに加えて:
実際には、アドレスを使用してプロセスを強制終了する必要があります0.0.0.0:0
。そのためadb.exe
、タスクマネージャーで殺害した人のほとんどは働いていました(私の場合、タスクマネージャーでもそれを確認できませんでした)。
@Bastetの手順に従って、他のプロセスがこのアドレスを使用していることがわかりました。私はそれを殺すために先に行き、そしてそれは私を与えたACCESS DENIED
としてError
。
だからtasklist | findstr ****
私はプロセスの名前を見つけてタスクマネージャーから殺しました。
その後、それは働き始めました。
私の場合bas_daemon
、bas_helper
このアドレスを使用しており、どちらもMOBOROBOに対応しています。
私も同じ問題を抱えていました。しかしadb
、私のラップトップにはプロセスがありませんでした。ログアウトしてアカウントにログインするだけで解決します...
その後、ADBはCMDウィンドウから開始できます。
デバイスやソフトウェアを再起動せずに最善かつ最も効率的な方法は次のとおりです。
以下を実行します。
adt-bundle-windows-x86_64\sdk\platform-tools\adb.exe
そしてもう一つ.. ADBは自立したものです。それ自体が機能することを望まない限り、何もできません。私が見つけたもう1つの方法があります。デバイスを5〜6分間接続したままにして、待ちます。すぐにデバイスが接続され、起動を試みます。
これは、Samsung Galaxy S III電話を応援するまで続きました(xda-developerフォーラムガイドに従ってください)。
これはかなりランダムに発生しますが、Eclipseの実行中に確実に発生します。
adb.exeプロセスを強制終了して再起動すると、問題が解決します。
Eclipseを終了してから再起動しても、助けにはなりませんでした。AndroidツールをPATH変数に追加し、タスクマネージャーを起動して、adb.exeを終了しました。
私はEclipseを再起動しましたが、うまくいきました。