web-dev-qa-db-fra.com

Impossible de charger exp: // une erreur s'est produite.

J'ai créé un projet avec Expo XDE. J'ai vérifié ceci Impossible de charger l'application expo: une erreur s'est produite mais j'ai déjà activé "Dessiner sur d'autres applications". Cela fonctionne https://expo.io/@ajaysaini/first-proj lorsque je scanne ce code QR, mais pas quand je l'exécute sur un appareil Android à partir de XDE.

main.js

import Expo from 'expo';
import React from 'react';
import { StyleSheet, Text, View } from 'react-native';

class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <Text>Updating!</Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
});

Expo.registerRootComponent(App);

Lorsque je l'exécute sur le périphérique, il affiche l'erreur ci-dessous sur le périphérique Android. J'ai essayé plusieurs fois de redémarrer XDE mais cela ne m'a pas aidé.

 enter image description here

Dependency graph loaded.
11:19:21 AM
Starting React Native packager...
11:19:24 AM
Scanning 528 folders for symlinks in D:\Expo\first-proj\first-proj\node_modules (18ms)
11:19:24 AM
Loading dependency graph.
11:19:24 AM
Running packager on port 19001.
11:19:25 AM
11:19:33 AM
Project opened! You can now use the "Share" or "Device" buttons to view your project.
11:19:44 AM
Opening on Android device
11:19:54 AM
Dependency graph loaded.
11:21:41 AM
Opening on Android device
11:23:31 AM
Opening on Android device

Erreur:

There was an unhandled error: Could not load exp://
Stack Trace:

Quelqu'un peut-il m'aider ce qui ne va pas?

6
N Sharma

Vous feriez mieux d'ouvrir le client XDE et d'activer le mode de développement. Ensuite, cliquez sur le bouton gray pour créer Host> LAN (réseau local - ce qui signifie partager des paquets via WiFi avec un périphérique réel). 

L'option Localhost peut aussi bien fonctionner, mais selon la documentation de Expo Debugging :

Si vous utilisez un réseau local, assurez-vous que votre appareil est sur le même réseau wifi que votre ordinateur de développement. Cela peut ne pas fonctionner sur certains réseaux publics. localhost ne fonctionnera pas pour iOS sauf si vous êtes dans le simulateur, et cela ne fonctionne que sur Android si votre appareil est connecté à votre machine via USB.

En outre, voici une réponse visuelle informative que j’ai écrite il ya quelques mois et qui pourrait également aider: Comment exécuter une application sur un véritable appareil iOS avec Expo?

11
eden

Parfois, le problème est dû à l’utilisation d’une mauvaise priorité de carte réseau.

ouvrir le terminal et courir 

ipconfig

si votre carte LAN principale n'est pas répertoriée comme la première carte, la modification de la priorité de la carte peut résoudre le problème. Suivez simplement les étapes:

  1. Panneau de configuration Aller à> Réseau et Internet> Connexions réseau

  2. Faites un clic droit sur votre réseau local principal

  3. Cliquez sur Propriétés> Internet Protocol Version 4.

  4. Cliquez sur Propriétés> Avancé

  5. Décocher 'Métrique automatique'

  6. Entrez 10 dans 'Interface Metric'

  7. Cliquez sur OK

1
Ali A. Aziz

J'ai rencontré le même problème et aucune des solutions ne fonctionnait pour moi. Le problème ici est que Expo affiche la mauvaise adresse IP à laquelle votre téléphone ne peut pas se connecter.

C'est comme ça que j'ai travaillé autour de ça. Je vais supposer que vous utilisez Windows et que vous utilisez le réseau local pour exécuter l'application sur votre appareil.

  1. Ouvrez cmd, tapez ipconfig et découvrez votre adresse IP locale. Il devrait être Répertorié comme IPv4 Address dans la section Wireless LAN Adapter. Cela ressemblera à quelque chose comme 192.168.xx.x
  2. Maintenant, ouvrez n’importe quel éditeur de texte sur votre téléphone et tapez exp://192.168.xx.x:19000. Copiez ce texte dans votre presse-papiers.
  3. Open Expo app. Vous verrez maintenant l’option Open from Clipboard sur En haut. Appuyez dessus et votre application devrait se charger.

Désormais, chaque fois que vous souhaitez charger une application, vous pouvez copier la même adresse et l'ouvrir dans Expo.

J'ai trouvé une autre solution de contournement plus simple. Exécutez la commande set REACT_NATIVE_PACKAGER_HOSTNAME=192.168.xx.x avant expo start. Ce définira l'adresse IP correcte dans Expo Dev Tools.

J'espère que cela t'aides.

1
fsociety

Hypothèses: Expo installée ( https://expo.io ) sur ordinateur via NPM/Fil et Expo installée sur Android/iPhone . De plus, le téléphone se trouve sur le même réseau wifi que l'ordinateur.

Mon ordinateur était connecté via WiFI et c’était le problème pour moi . Windows: Ligne de commande: $ ipconfig Recherchez l’adresse IP Wifi de votre ordinateur. Le mien était Ip v4: 192.168.1.xxx Tapez le navigateur Web sur l'URL du navigateur Web Phones: exp: //192.168.1.xxx: 19000 Ensuite, vous devriez voir du texte, qui signifie que le téléphone se connecte via le réseau (bon signe) Ensuite, ouvrez expo sur le téléphone et devrait voir le lien via le Presse-papiers . Cliquez sur Lien via Clipboard qui se trouve dans le programme Expo du téléphone. Ensuite, il devrait charger l’application sur votre téléphone . Cela a fonctionné pour moi . Ps Suivez les instructions pour donner la permission à Expo, etc., lorsque cela fonctionne pour la première fois.

0
Justin Wilson

J'ai résolu le même problème avec les recommandations de l'équipe React Native - installer et exécuter le logiciel Genymotion ::

  1. Installer Genymotion avec VirtualBox
  2. Inscription sur le site de Genymotion
  3. Lancer le logiciel Genymotion et !!! SignIn
  4. Fermez le programme d'invite npm avec le projet et redémarrez-le.
  5. npm start (dans la fenêtre npm promt du répertoire du projet)
  6. Fermez et démarrez l'application Expo, scannez le code-barres

Si mon application s'exécute correctement, les adresses IpV sont identiques, par exemple:

exp://10.0.0.125:19000   and
ipconfig -> IPv4 Address. . . . . . . . . . . : 10.0.0.125
0
Roman

J'ai corrigé mon problème en mettant à jour npm et le noeud.

0
zc lees

pour une raison quelconque, je créais des conflits avec docker, je l'ai désactivé et cela a fonctionné sans problème, je suis presque sûr que c'est hyper-V

Peut-être que cela pourrait être utile de simplement expliquer que, une telle erreur se produit si votre téléphone et votre ordinateur sont sur des réseaux différents. 

J'ai résolu ce problème par modem et de cette façon, mes deux appareils ne sont pas sur le même réseau.

Ce qui signifie que vous pouvez probablement connecter vos deux appareils au même réseau Wi-Fi que cela devrait fonctionner.

0
Huey Mataruse

Peut-être que votre réseau ne prend pas en charge la communication LAN. Basculer LAN en local a fonctionné pour moi. From your MAC you can go to http://localhost:[portnumber] Comme indiqué dans l'image ci-dessous. 

 enter image description here

0
ewalel

Si quelqu'un rencontre un problème similaire, mon problème a dû être résolu pour permettre à node.js de se connecter au réseau, et cela a fonctionné.

0
P Fuster