Exécuter react-native sur l'émulateur android

j'essaie de lancer react-native app sur genymotion android emulator sur mon mac. Quand j'écris react-native run-android devient

Running /usr/local/opt/android-sdk/platform-tools/adb reverse tcp:8081 tcp:8081
error: closed
Could not run adb reverse: Command failed: /usr/local/opt/android-sdk/platform-tools/adb reverse tcp:8081 tcp:8081
Building and installing the app on the device (cd android && ./gradlew installDebug...
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/android-setup.html
MacBook-Pro-MacBook:ART-CarefulPeople macbook$ 

Alors j'ai essayé:

  1. react-native start
  2. react-native run-android

Le même résultat.

Alors j'ai essayé:

  1. react-native bundle --entry-file index.android.js --platform android --bundle-output android/app/src/main/assets/index.android.bundle

  2. curl "http://localhost:8081/index.android.bundle?platform=android" -o "android/app/src/main/assets/index.android.bundle"

  3. react-native run-android

sur Le même résultat.

j'ai essayé juste adb reverse tcp:8081 tcp:8081 et il dit error: closed

quand j'essaie d'exécuter l'application sur l'émulateur android-sdk il obtient la même erreur au-dessus mais sans error: closed.

depuis android studio, je peux lancer cette application et elle fonctionne sur genymotion. Dites-moi s'il vous plaît que dois-je faire pour lancer mon application sur android emulator?

21
demandé sur alborozd 2016-07-26 00:23:30

6 réponses

j'ai eu un problème similaire, et après avoir passé tellement de temps et beaucoup de recherche sur cette question la seule astuce a fonctionné pour moi:

  1. veuillez installer les SDK nécessaires comme indiqué dans cette figure

Configure Required SDKs Configure Required SDKs

  1. si vous l'avez déjà installé, vous devez donc mettre à jour les SDK suivants:
    • Android SDK Tool (mise à jour à la dernière version)
    • Android SDK Platform-tools (mise à jour pour la dernière version)
    • Android SDK Build-tools (mise à jour à la dernière version)
    • Android Support RepositoryExtra dossier (mise à jour à la dernière version)
  2. Vous Devez avoir au moins Installé la Même version Android API comme installé Android SDK Build-tools& Android SDK Platform-tools version comme indiqué dans le Configure Required SDKs figure ci-dessus.

Remarque: Local Maven repository for Support Libraries qui est répertorié comme L'exigence SDK dans le les docs officiels de React-native sont maintenant nommés comme dépôt de Support Android dans le SDK Manager .

34
répondu Rizwan Jamal 2018-03-15 10:18:54

j'ai eu un problème similaire avec l'émulateur d'android studio à chaque fois, ou sur un appareil physique. Au lieu de cela, vous pouvez rapidement lancer l'émulateur android à partir de la ligne de commande,

android avd

une fois l'émulateur en marche, vous pouvez vérifier avec adb devices si l'émulateur. Alors vous pouvez simplement utiliser react-native run-android pour exécuter l'application sur l'émulateur.

assurez-vous d'avoir installé les outils de la plate-forme pour pouvoir utiliser adb. Ou vous pouvez utiliser

brew install android-platform-tools
6
répondu Elton Jain 2016-11-21 07:32:28

Il m'est arrivé d'avoir un exemple du packager tournant avec un vieux projet (j'ai couru réagir indigènes start comme d'habitude). J'ai été en utilisant Ubuntu 14.04. Donc ce que j'ai fait c'est d'arrêter cette instance et d'aller dans mon dossier de projet et dans deux onglets de console différents j'ai lancé ces deux commandes séparément:

npm start #here I used to run react-native start
react-native run-android

npm start est défini dans mon paquet.json comme:

"start": "node_modules/react-native/packager/packager.sh"

Je ne sais pas s'il y a une sorte de truc confus pour réagir indigènes, mais qui a fait le tour.

2
répondu Rowinson Gallego 2016-09-17 04:03:23

avait un problème similaire. J'ai mis à jour mon Genymotion et mes SDK/bibliothèques/dépendances android et tout semble fonctionner. Pour mettre à jour mes SDK j'ai utilisé android sdk manager {ANDROID_SDK_FOLDER}/tools/android sdk

1
répondu Vincent Nguyen 2016-07-29 17:32:43

sur Windows 10 et Android Studio, vous pouvez aller dans Android Studio à "Fichier" - > " Paramètres "dans les paramètres puis à" Apparence et Comportement "- > "Paramètres Système" - > "SDK Android". Dans l'onglet "Outils SDK" actif:

  • "version du SDK Android-Outils .."
  • "Émulateur Android"
  • "Android SDK Plattform-Tools"
  • "Android SDK Tools"

si tout est installé, vous pouvez démarrer L'émulateur dans Android Studio Avec "Outils" - > " Android" - >"AVD Manager". Si l'Émulateur exécuter, vous pouvez essayer de "réagir indigènes de l'exécution android"

1
répondu Edelfix 2018-03-10 10:10:25

secouez votre téléphone et accédez à Dev Setings alors allez à Débogage du serveur hôte et le port pour périphérique puis écrivez l'adresse ip de votre pc et du port où vous vous êtes connecté. exemple 192.168.9.2:8081

C'est la solution finale et la meilleure.

0
répondu Emil Mammadov 2018-06-14 19:22:36