EclipseでDebugを押してエミュレーターを起動した後、一定時間後にADBから切断されますが、エミュレーターは開いたままです。レスポンシブで、アプリをナビゲートして起動できます。
Eclipseからデバッグできるように、エミュレータをADBに戻すにはどうすればよいですか?
(現在の回避策は、エミュレーターを終了し、Eclipseを閉じて、両方を再起動することです。エミュレーターの起動に時間が必要であることがわかっているため、10分かかります)
編集1
この画像をご覧ください。
編集2
サーバーを強制終了して再起動した後。 1つのエミュレータプロセスがEclipseの[デバイス]タブに表示されます。しかし、それは拡張できず、サブプロセスは表示されません。
「デバッグは既に実行中です」と表示されているため、デバッグをヒットできません。 (デバッグを停止する方法は?)
別のプロジェクトのデバッグを開始できた場合、エミュレータにハングアウトして、「デバッガがアタッチするのを待っています」と表示されます。何も起こりません。
あなたが言ったように、問題はEclipseがエミュレータとの接続を失うことではなく、ADB- Android Debug Bridge -それとの接続を失うことです。 EclipseはADBを使用して、ADBが破損したときにエミュレータと通信するため、Eclipseは何もできません。
これを修正するには 、次のコマンドを実行してADBサーバーを停止します :
adb kill-server
通常、EclipseはADBを再起動しようとしますが、次のようなADBコマンドを実行して自分で再起動することもできます。
adb devices
すると、次のような出力が表示されます。
* daemon not running. starting it now *
* daemon started successfully *
List of devices attached
emulator-5554 device
EclipseのDevicesビューでReset adbオプションを使用して、マウスでこれを行うこともできます。
ConsoleビューにはDDMS
とAndroid
の2つのモードがあることに注意してください。通常はConsole
モードですが、ADBステータスメッセージを表示するのはDDMS
モードです。モニターアイコンの付いたボタンをクリックするか、横にある矢印を使用して、モードを選択します。
他のすべてが失敗した場合は、OSからadbプロセスを強制終了してください。 Windowsでは、XPを使用します。
TASKKILL /F /IM adb.exe
もっと簡単な方法があります。 Eclipseから、[〜#〜] ddms [〜#〜]パネルからadbをリセットできます。これを行うための短いビデオがあります "DDMSでADBをリセット"
オプションを入手できる場所の簡単なスクリーンショットを次に示します。
時々、キルサーバーは私のマシン(WinXP)で役に立たないでしょう。たとえば、DDMS-Viewにエミュレータが表示されなくなったり、表示されますが、プロセスが実行されていません。
これらの場合、エミュレータとEclipseを閉じ、プロセスリストからadb.exe-processを手動で強制終了します。
その後、Eclipseとエミュレーターを再起動すると、すべてが再び正常になります。
今、私はちょうどそのためのキーボードショートカットが必要です:-)
Adb kill-serverおよびadb start-serverで試してください。それでも同じ問題が発生し、実行中のプロセスをddmsの観点から強制終了します。このリンクを参照してください( http://www.jiahaoliuliu.com/2011/02/stopping-Android-applications-already.html )。これで問題が解決しました。あなたも願っています。
macでは、アクティビティマネージャーからadbを強制終了し、プログラムを手動で再度開く必要がありました。 Eclipseをすべて開いて、問題なく動作しました。
Android 4.0(APIレベル14)エミュレーターでアプリケーションをテストしています。アプリを実行すると、エミュレーターが起動し、読み込まれるとすぐにEclipse DDMSがエミュレーターから切断されます。
私が使用している回避策は次のとおりです:ターミナルを開き、プラットフォームツール(C:\ Android-sdk\platform-tools \またはAndroid-sdkがインストールされている場所)に移動し、adb kill-server
、次に実行、adb start-server
。 DDMSにエミュレータがリストされます-Javaパースペクティブ、アプリを右クリック->実行-> Androidアプリケーション。
お役に立てれば。
便利なbashスクリプト
#!/bin/bash
./path/to/adb kill-server
./path/to/adb start-server
./path/to/adb devices