このチュートリアルで最初の反応ネイティブプロジェクトを作成しています: http://facebook.github.io/react-native/
コードの実行とreact-native run-Android
の実行に関しては、次のようになります。
adb server is out of date. killing...
* daemon started successfully *
そして、Androidデバイス上のアプリは明らかに動作していません。
SDKを再インストールし、adb kill-server
とadb start-server
を試みましたが、何も機能しないようです
Android 4.4およびUbuntu 14.04を使用しています
Android Studioを開き、すべてのビルドツールを更新し、デバイスに必要なSDKをインストールし、Android_HOME
env varを同じディレクトリに設定していることを確認しますin Android Studio(通常/home/you/Android/Sdk
)で、react-native-cliノードパッケージも更新します。adbkill-server
およびadb start-server
を実行します。
おそらく、adbバージョンに問題があります。ビンを変更するだけです。
Sudo cp ~/Android/Sdk/platform-tools/adb /usr/bin/adb
Sudo chmod +x /usr/bin/adb
最新のadb
更新では、adbサーバーは古くなっています。 killing ...メッセージはより有益なものに置き換えられましたadbサーバーバージョン(%d)はこのクライアント(%d)と一致しません
したがって、このソリューションは両方に適用できます。
エラーの根本的な原因は、システムに異なるバージョンの複数のadb
バイナリがインストールされていることです。これらのadb
バイナリは、さまざまなソースに由来する場合があります。いくつかの開発ツールと一緒に配布されるか、Linuxディストリビューションの公式リポジトリからインストールされます。これらのソースを使用しないことを強くお勧めします。 adb
の最新バージョンの公式ソースは、Android SDKのplatform-tools
パッケージです。 adb
タグ情報ページ には、パッケージへの直接リンクが含まれています。
Android SDKが既にインストールされている場合-SDK Managerを使用してplatform-tools
パッケージを最新バージョンに更新するだけです。そうでない場合-プラットフォームのplatform-tools.Zip
ファイルの内容をダウンロードして、フォルダーに解凍します。そのフォルダーを$PATH
に追加します。実行中のすべてのadb
プロセスを強制終了し、adb
の他のすべてのコピーを見つけて削除するようにしてください。まれに、一部のソフトウェアが機能しなくなる場合があります。その場合、アプリケーションの内部設定を変更して、新しいバイナリの場所を指定するか、アプリケーションがハードコードされたadb
場所を使用するか、新しい場所へのシンボリックリンクを作成する必要があります。
それでおしまい。サーバー/クライアントのバージョンの不一致はこれ以上ありません。独自のadb
コピーがあらかじめパッケージ化されている別のソフトウェアをインストールした後、手順を繰り返す必要がある場合があります。
SDKに加えてadb
パッケージをインストールした可能性があります。その場合、
Sudo apt purge adb
問題を解決するかもしれません。
ADB(1.0.32)とGenymotion(2.8.2)を使用してこのエラーが発生しています。私の解決策は、ローカルのAndroid SDKのADBからGenymotion ADB(デフォルト)に、VMのADBを変更することでした。