Android=アプリケーションをテストしようとしていますが、デバイスで起動した後、react-native run-Android
コマンドで起動すると、エラーなしで中間停止します。
私はこれを得た:
This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.14.1/userguide/gradle_daemon.html
Running adb -s emulator-5556 reverse tcp:8081 tcp:8081
Starting the app on emulator-5556 (adb -s emulator-5556 Shell am start -n com.app/.MainActivity)...
Starting: Intent { cmp=com.app/.MainActivity }
プロンプトに戻った後、常にではありませんが、試してみると、正常に実行される場合がありますが、これを10〜15回実行する必要があります。 SDKのバージョンは25で、React Native Getting Started installation guide)に従いました。
更新:
react-native start
を試してみたところ、Loading dependency graph... ERROR Packager can't listen on port 8081
と表示されましたが、前のコマンドで表示されなかった理由がわかりません。この場合、--port 9000
を使用してポートを変更できますが、react-native run-Android
コマンドで他のフラグを見つけることができませんでした。
更新2:
リモートデバッガーがデバイスでオンになり、:8081ポートでリモートデバッガーに接続されており、adbが:8081を介してモバイルアプリケーション用の新しいサーバーをしばらくの間作成していたため、問題が発生したようですはまだ:8081ポートを使用しているため、新しいポートを作成することはできませんでした。リモートデバッガをオフにしたところ、問題なく実行されています。それが問題だった可能性があるかどうかはわかりません。
私がubuntuで同じ問題を抱えていましたが、うまくいったのは、端末を閉じたところ、再起動されたUSBからデバイスが削除されたことです。まず、packages.json内にこれらの行を追加することをお勧めします。
"scripts": {
"prepare-repository": "npm i -g react-native-cli yarn;yarn install; react- native link",
"emulator": "emulator -avd Nexus5V6L23_x86_64 -scale 1.0",
"install": "react-native run-Android",
"start": "react-native start --reset-cache",
"Android": "npm run install && npm run start",
"clean": "watchman watch-del-all && npm cache clean && cd Android && ./gradlew clean && cd ..",
"test": "jest"
}
その後、それを保存し、プロジェクトを作成したフォルダーに移動します。私の家/ワークスペース/デモとしましょう。その実行スクリプトの内部
npm run clean //this will clear all cache
その後
npm run Android
デバイスとスタートリセットキャッシュでアプリを実行します。それが役立つかどうか教えてください。
時々追加
adb reverse tcp:8081
npmを実行する前にrun Androidトリックを実行します。Gradleデーモンを有効にすることをお勧めします。これにより、ビルドがより高速になります。それを有効にするには、Android-> gradle.propertiesに移動し、そのファイル内に書き込みます
org.gradle.daemon=true
私は同じ問題を抱えていて、問題はここに記載されています すでに使用されているポート 。したがって、ポートを占有しているプロセスを強制終了します。
Sudo lsof -i :8081
kill -9 <PID>
私の場合、キャッシュを消去するだけで役に立ちました:
npm cache clean --force
.Android/gradlew clean
エラーがまったくなく、ビルドが成功した私の場合、ビルドとアプリがクラッシュした後、ビルダーが終了していました。
ここであなたはそれを解決します、それが終了した後、単にタイプしてください
yarn start
あなたの反応ネイティブは稼働しているはずです。
それが役に立てば幸い。