更新(14/10/10):Genymotionはこの問題を修正する2.3.1をリリースしました。 https://cloud.genymotion.com/page/changelog/#231
更新(10/21/14):Genymotionは私のサポートメールに返信し、以下の@plackemacherが推奨する解決策が現時点で推奨される修正であることを示しました。彼らは問題を認識しています。
Lollipopにアップグレードしてから、Genymotionエミュレーターを使用するとadbの問題が発生します。デバイスはAndroid Studioに表示されません。また、adb devices
を実行しようとすると、次のエラーが表示されます。
$ adb devices
adb server is out of date. killing...
cannot bind 'tcp:5037'
ADB server didn't ACK
* failed to start daemon *
error:
それがロリポップのアップグレードによるものなのか偶然によるものなのかはわかりません。
編集/更新:
Chris Sattonのコメントごとに、複数のadbプロセスが実行されているかどうかを調査し(ps aux | grep adb
)、Genymotionコンフリクト(?)のようです。独自のバージョンのadbを含めるようです。
総計72550 0.0 0.0 611164 1508 ?? S 4:14 PM
0:00.02 /Applications/Genymotion.app/Contents/MacOS/player.app/Contents/MacOS/tools/adb -s 192.168.56.102:5555 Shell総計72523 0.0 0.0 635956 2296 ?? S 4:14 PM 0:00.02 adb -P 5037 fork-server server
これを実行してみてください:
killall -9 adb
これにより、実行中のデーモンのトレースがすべて削除されます。
編集:以下の最適なソリューション
この問題は、adb
プラットフォームSDKの最新バージョンとの非互換性である可能性があります。 Genymotionでこの問題を解決する最善の方法は、Genymotion内のAndroid SDKを自分の場所に設定することです。これは、[設定]ページにあります。
私の場合、問題はこのコマンドを使用してadbツールとfastbootをインストールしたことでした
Sudo apt-get install Android-tools-adb Android-tools-fastboot
リポジトリから、この場合、この実行可能ファイルは/usr/bin/
ディレクトリに移動して、システム全体で使用できるようにします($PATH
変数)。
さらに、上記の回答のようにgenymotionを設定してAndroid studioを実行しています。
そのため、adb(私の場合はadb Shell
)にアクセスしようとしたときに、adbプロセス(サーバー)の別のコピーを開始してデフォルトポートにバインドしようとしていたため、問題はここにありました。
Android-tools-adb Android-tools-fastboot
をアンインストールし、Android SDK
へのパスを$PATH
変数に追加しました
Ubuntuでgenymotionを使用します。
私の解決策は、PATHされたadbの代わりに実際にバイナリを使用することでした。
~/genymotion/tools/abd reboot
また、genymotionにカスタムSDKがあります。
最終的に私のために働いたと私は手間がかからないと思うことは、platform-tools
フォルダから直接adbコマンドを実行することです。たとえば、./adb devices
を使用してデバイスを表示します。また、genymotionのSDKをAndroidのデフォルトSDKに変更しましたが、それを行わないと動作しないかどうかはわかりません。
adbを使用する場合は、Genymotionを使用した後、Androidスタジオエミュレーターを使用して、必要なものをテストすることをお勧めします