2017-03-10 4 views
2

Ich versuche, meine Android-Anwendung zu testen, aber wenn ich es mit react-native run-android Befehl starten, nachdem es auf dem Gerät starten sofort stoppen ohne Fehler.'React native run android' stoppen sofort nach dem Start der App im Emulator

Ich habe dies:

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 } 

Nachdem ich die Aufforderung aber nicht immer wieder, wenn ich versuchen, halten Sie es manchmal richtig läuft, aber ich habe diese 10-15 mal laufen. Die SDK-Version ist 25 und ich folgte der React Native Getting Started Installationsanleitung.

  • OS: Fedora 24
  • React-native: 0.42.0

UPDATE:

ich mit react-native start tryed und es wurde gesagt, für mich Loading dependency graph... ERROR Packager can't listen on port 8081 aber ich don‘ Ich verstehe nicht, warum der vorherige Befehl es nicht für mich gesagt hat. In diesem Fall kann ich den Port mit der --port 9000 ändern, aber ich habe kein anderes Flag für den Befehl react-native run-android gefunden.

UPDATE 2:

Es scheint, das Problem aufgetreten ist, weil der Remote-Debugger auf dem Gerät eingeschaltet und es wird mit dem Remote-Debugger auf dem: 8081-Port und die adb wollte einen neuen Server für die schaffen Mobile App durch die: 8081 für eine Weile die alte Remote-Debugging besetzen immer noch den: 8081-Port, so war es nicht erlaubt, eine neue zu erstellen. Ich habe den Remote-Debugger ausgeschaltet und es läuft ohne Probleme. Ich bin mir nicht sicher, dass es möglich ist, dass es das Problem war.

+0

Haben Sie versucht, die App in Android Studio zuerst zu öffnen? Gradle führt einen Test Build durch und schlägt fehlende Pakete vor. Es kann einige der Probleme mit dem Android-Build lösen. –

+0

@AnnaMelzer Ich habe den Beitrag aktualisiert. – PumpkinSeed

Antwort

2

Ich hatte das gleiche Problem in Ubuntu, was für mich funktionierte, ist, dass ich Terminal geschlossen mein Gerät von USB entfernt neu gestartet. allererst würde vorschlagen, dass Sie diese Zeilen in Ihrem packages.json ersetzen Skripte mit diesem

"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" 
} 

hinzufügen Danach speichern und dann auf den Ordner, in dem u-Projekt erstellt. sagen wir meins home/workspace/demo. Innerhalb dieses Skript ausführen

npm run clean //this will clear all cache 

nach diesem

npm run android 

Es App im Gerät ausgeführt werden sowie Start-Reset cache.Let Sie mich wissen, ob es hilft.

Manchmal

adb reverse tcp:8081 

Zugabe vor npm laufen mit Android funktioniert der Trick Ich werde empfehlen Sie Gradle Dämon es wirklich macht Ihren Build schneller zu ermöglichen. Um es zu aktivieren goto android-> gradle.properties und in dieser Datei schreiben

org.gradle.daemon=true 
+0

Ich habe die Post aktualisiert, schau es dir an. – PumpkinSeed

+0

Ich werde viele Dinge ausprobiert, aber nicht funktioniert.zeigt diesen Fehler an Starten der App auf 7LBQ89ZHLNEMLJZL (adb -s 7LBQ89ZHLNEMLJZL Shell am Start -n com.app/.MainActivity) ... Start: Absicht {cmp = com.app /. MainActivity} – truesource

+0

npm laufen sauber funktioniert für mich . –

Verwandte Themen