J'utilise React native 0.52.0 et react-native-cli 2.0.1 sur mon PC Windows pour le développement Android. Malgré tous les changements que j'ai faits. Quand j’exécute react-native run-Android
, la compilation est réussie, mais lorsque je l’exécute, j’ai l’écran natif de réaction par défaut.
Le résultat quand je lance react-native run-Android
-
L'application que je reçois
index.js
import { AppRegistry } from 'react-native';
import App from './App';
AppRegistry.registerComponent('albums', () => App);
app.js
import React from 'react'
import ReactNative, { Text } from 'react-native'
export default const App = () => {
return (
<Text>Hello World</Text>
)
}
Quand j’ai exécuté react-native init albums
, c’était juste un fichier index.js qui avait été créé, il n’y avait aucun fichier index.Android.js ou index.ios.js Qu'est-ce que je fais de travers?
En supposant que vous soyez dans le bon dossier, essayez ceci:
react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res/
si vous avez index.Android.js, faites ceci à la place:
react-native bundle --platform Android --dev false --entry-file index.Android.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res/
Il suffit ensuite d’exécuter réactif natif sous Android.
SOLUTION
react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res
SORTIE sera:
`c:\Users\lenger\Desktop\webrowser>react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res
Scanning folders for symlinks in c:\Users\lenger\Desktop\webrowser\node_modules (43ms)
Scanning folders for symlinks in c:\Users\lenger\Desktop\webrowser\node_modules (38ms)
Loading dependency graph, done.
bundle: start
bundle: finish
bundle: Writing bundle output to: Android/app/src/main/assets/index.Android.bundle
bundle: Done writing bundle output
et après
Exécutez à nouveau react-native run-Android
, vous trouverez votre travail de modification.
https://lengerrong.blogspot.am/2018/01/react-native-run-Android-do-not.html
Vous mettez probablement à jour le mauvais fichier et ne l'appelez pas dans la classe AppRegistry.
Vérifiez (ou publiez) votre index.Android.js complet et assurez-vous que le fichier qu'il appelle et que vous importez est celui que vous modifiez réellement.
Cela a fonctionné pour moi . Étape 1)
rm -rf /usr/local/var/run/watchman && brew uninstall watchman && brew install watchman
Étape 2)
react-native start
Cela a fonctionné pour moi:
Dans votre dossier de projet, lancez ceci
c:\Users\lenger\Desktop\YourProjectFolder>react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res
Analyse des dossiers pour les liens symboliques dans c:
\Users\lenger\Desktop\webrowser\node_modules (43ms)
Scanning folders for symlinks in c:\Users\lenger\Desktop\webrowser\node_modules (38ms)
Loading dependency graph, done.
bundle: start
bundle: finish
bundle: Writing bundle output to: Android/app/src/main/assets/index.Android.bundle
bundle: Done writing bundle output
Exécutez à nouveau réactif natif sous Android
Je partage le lien où j'ai trouvé cette solution: https://lengerrong.blogspot.com/2018/01/react-native-run-Android-do-not.html
dans la fenêtre de votre terminal, allez dans le dossier de votre projet et essayez cette commande
react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res/
lancez le script ci-dessous, après cela, faites simplement le lien 1.gradlew clean 2.react-native
react-native bundle --platform Android --dev false --entry-file index.js --bundle-
output Android/app/src/main/assets/index.Android.bundle --assets-dest
Android/app/src/main/res
Pour moi, le problème était que j'avais supprimé les autorisations Internet de mon fichier AndroidManifest.xml (puisqu'il n'était techniquement pas nécessaire). React Native utilise cette autorisation pour connecter votre application à la machine de développement (et activer le débogage en direct).
<uses-permission Android:name="Android.permission.INTERNET" />
Ouvrez le fichier package.json et mettez à jour ce code.
"scripts": {
"Android": "react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res && react-native run-Android",
"ios": "react-native run-ios"
},
En supposant que vous soyez dans le bon dossier, essayez ceci:
Exécutez cette commande uniquement, les deux commandes seront automatiquement activées.
npm run Android
Dans mon cas, supprimer la ligne ci-dessous dans gradle.properties a résolu le problème.
org.gradle.configureondemand = true
Dans votre répertoire de projet, il y a un fichier package.json. Vous pouvez ajouter l’extrait de code suivant dans ce fichier json sous scripts:. Après cela, vous pouvez exécuter l’application à l’aide d’une commande npm run Android-windows
Pour bien fonctionner, vous devez ajouter le script de code ci-dessous.
"Android-windows": "react-native bundle --platform Android --dev false --entry-file index.js --bundle-output Android/app/src/main/assets/index.Android.bundle --assets-dest Android/app/src/main/res && react-native run-Android"