web-dev-qa-db-fra.com

React Native sur Ipad - Erreur - impossible de se connecter au serveur de développement

J'utilise React-Native, lorsque j'exécute le AwesomeProject avec Xcode et le simulateur iPhone, tout fonctionne bien, mais lorsque j'ai connecté mon iPad et créé le projet sur mon iPad, je reçois une erreur sur l'iPad lorsque l'application démarre:

"Impossible de se connecter au serveur de développement. Assurez-vous que le serveur de noeud est en cours d'exécution. L'opération n'a pas pu être terminée (erreur NSURLErrorDomain -1004)".

J'ai également veillé à ce que le package de noeud fonctionne. J'ai même redémarré Xcode et tout recommencé avec l'exécution de npm start.

Pourriez-vous s'il vous plaît aider?

19
Assaf Sheep

Sur votre AppDelegate.m, vous devez mettre à jour jsCodeLocation et remplacer localhost par l'adresse IP de votre machine.

Soit cela, soit regroupez la source compilée dans votre application, qui est commentée comme option 2 sur AppDelegate.m ainsi que. Vous téléchargez le code compilé et l'ajoutez à votre projet Xcode.

30
tadeuzagallo
4
Micael

J'ai préparé une petite instruction qui aidera à résoudre ce problème.

Lorsque votre application ne peut pas se connecter au serveur, vous verrez le message comme ceci:

enter image description here

Ouvrez un fichier AppDelegate.m dans votre projet Xcode et recherchez

jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"];

Vous devez remplacer cette adresse par votre adresse locale.

enter image description here

Pour rechercher votre adresse IP locale dans Mac OS X, ouvrez l'application Terminal (située dans/Applications/Utilitaires) et tapez ipconfig getifaddr en1 pour le sans fil ou ipconfig getifaddr en0 pour Ethernet.

enter image description here

Vous pouvez le vérifier dans le navigateur. Et vous verrez React page du débogueur natif

enter image description here

Remplacez simplement localhost dans AppDelegate.m par votre adresse IP. localhost à 192.168.1.100 dans mon cas.

enter image description here

Exécutez à nouveau votre application dans Xcode.

3
Ali Mamedov

Un autre problème potentiel qui peut provoquer exactement la même erreur est App Transport Security (ATS) dans iOS9 - cela m'est arrivé, même si tout le reste a été configuré correctement. Voir ma description et ma solution sur https://stackoverflow.com/a/34880394/2397068 .

2
Lane Rettig

Dans mon cas, je viens d'avoir une très ancienne version de node.js installée (version 0.8.6). Après la mise à jour de node.js vers la version 0.12.2, le projet par défaut qui react-native init AwesomeProject créé a parfaitement fonctionné.

0
MindJuice