J'essaie de faire le `` bonjour monde '' natif et j'utilise le débogage USB sur mon Android.
Iran react-native run-Android
, puis react-native start
.
Je peux afficher le fichier js dans localhost
, mais je reçois le message "Impossible de se connecter au serveur de développement" sur mon téléphone.
J'ai suivi les instructions pour exécuter adb reverse tcp:8081 tcp:8081
, puis j'ai réalisé que la commande n'existe pas, j'ai donc exécuté adb forward tcp:8081 tcp:8081
au lieu.
Toujours pas de chance. Utilisation de [email protected], ubuntu 14.04. Mon téléphone est Nexus 5 sur Android 6.0.1.
Comment puis-je autoriser mon téléphone à accéder à mon localhost
?
Soit dit en passant, cela fonctionne sur le wifi, mais j'aimerais le faire fonctionner sur USB.
Juste un autre scénario, cette erreur m'est arrivée lorsque j'ai oublié d'exécuter react-native start
commande. Je suis généralement les étapes ici lorsque je démarre un nouveau projet. Les étapes en bref sont les suivantes (Android dans mon cas):
dans le répertoire où vous souhaitez créer votre nouveau projet, ouvrez votre ligne de commande et exécutez:
$ react-native init <Your new project name/it is also the registration name>
$ cd <the new directory you created>
$ react-native start //This is the step that I forgot
Ouvrez une nouvelle invite de commande et exécutez ce qui suit dans le même répertoire (que vous venez de créer) pour lancer l'application sur votre AVD.
$ react-native run-Android
Si tout est correctement configuré, vous devriez voir votre nouvelle application s'exécuter dans votre émulateur Android sous peu.
Vous trouverez dans le fichier index.Android.js dans le répertoire personnel de votre projet, la dernière ligne contient le registre de l'application en utilisant le même nom que vous avez utilisé dans la première commande ci-dessus
adb reverse tcp:8081 tcp:8081
Fonctionne uniquement pour Android 5.0 + pour exécuter l'application sur des appareils avec Android les versions inférieures à 5.0 frappent la commande suivante après npm start
se fait dans Terminal (dans le dossier du répertoire de l'application).
curl "http://localhost:8081/index.Android.bundle?platform=Android" -o "Android/app/src/main/assets/index.Android.bundle"
maintenant exécutez l'application, cela fonctionnera. Le seul inconvénient est que chaque fois que vous effectuez une modification, vous devez relancer la commande et réexécuter l'application.
J'ai trouvé la solution :)
Je suis sur Ubuntu 16, j'ai donc utilisé la commande ip addr show qui m'a donné l'adresse IP de mon ordinateur.
J'ai utilisé cette adresse IP et j'ai pu accéder à localhost sur mon mobile.
Enfin, j'ai ajouté l'adresse IP et le numéro de port aux paramètres de Android et mon application ont pu accéder au serveur de développement
Il y a 10 minutes, j'ai eu le même problème, je suppose, et la façon dont j'ai résolu cela était de lire ceci
https://facebook.github.io/react-native/docs/running-on-device-Android.html
et quand j'ai fait ça, j'ai trouvé que je n'avais pas Android-tools-adb
installé, donc en regardant autour j'ai trouvé
'Aucune commande' adb 'trouvé' erreur sur Ubunt
ce qui me donne la réponse
Sudo apt-get install Android-tools-adb
et après tout ça je mets
export PATH=${PATH}:~/Android-sdk-linux/tools
export PATH=${PATH}:~/Android-sdk-linux/platform-tools
alors tout fonctionne bien, maintenant je peux voir mon application dans mon Android.
BTW l'option que je choisis parmi les documents natifs réactifs était celle qui me dit
"Utiliser adb reverse
Notez que cette option est disponible sur les appareils exécutant Android 5.0+ (API 21). Demandez à votre appareil de se connecter via USB avec le débogage activé (voir le paragraphe ci-dessus sur la façon d'activer le débogage USB sur votre appareil).
Run adb reverse tcp:8081 tcp:8081
Vous pouvez utiliser Reload JS et d'autres options de développement sans configuration supplémentaire
J'ai rencontré le même problème, et c'est tout parce que l'application Android n'a pas cette autorisation:
<uses-permission Android:name="Android.permission.INTERNET" />
J'avais un problème similaire. J'obtiendrais cette erreur en essayant de le faire fonctionner sur l'appareil. Cela fonctionnait bien sur mes simulateurs sur mon ordinateur.
Le problème était que lorsque je faisais des appareils adb ou que je réagissais sous Android, j'obtenais "ADB n'est pas reconnu comme une commande interne ou externe".
Mon correctif consistait donc à ajouter le chemin d'accès au répertoire parent d'adb.exe à mes variables d'environnement, puis à redémarrer mes invites de commande. Après avoir fait cela, les appareils adb ne lançaient pas le "blah externe interne non reconnu" et il a répertorié mon appareil. J'ai ensuite exécuté React-native run-Android et au démarrage plus d'écran rouge montrant le message d'erreur complètement inutile Erreur lors de l'appel de AppRegistry.runApplication! :)
J'ai donc trouvé que ADB se trouvait dans mon dossier:
C:\Users\Dell\AppData\Local\Android\sdk\platform-tools\adb.exe Je suis sur un système Windows 10. Dell est mon nom d'utilisateur de l'ordinateur.
Je suis donc allé dans System Environemnt Variables, puis j'ai trouvé "Path" puis j'ai cliqué sur "Edit", puis j'ai cliqué sur "New" et j'ai ajouté dans "C:\Users\Dell\AppData\Local\Android\sdk\platform-tools".