À partir de react-native 0.57, aucune des réponses fournies précédemment ne fonctionnera plus, car les répertoires dans lesquels gradle s'attend à trouver le bundle et les actifs ont changé.
Méthode simple sans bundle natif de réaction
Le moyen le plus simple de créer une version de débogage est de ne pas utiliser la react-native bundlecommande du tout, mais simplement de modifier votre app/build.gradlefichier.
À l'intérieur de la project.ext.reactcarte dans le app/build.gradlefichier, ajoutez l' bundleInDebug: trueentrée. Si vous voulez que ce ne soit pas une --devconstruction (pas d'avertissements et de bundle minifié), vous devez également ajouter l' devDisabledInDebug: trueentrée à la même carte.
Avec bundle React-Native
Si, pour une raison quelconque, vous devez ou souhaitez utiliser la react-native bundlecommande pour créer le bundle, puis ./gradlew assembleDebugpour créer l'APK avec le bundle et les actifs, vous devez vous assurer de placer le bundle et les actifs dans les chemins corrects, là où gradle peut les trouver.
À partir de 0,57 natif de réaction, ces chemins sont
android/app/build/generated/assets/react/debug/index.android.jspour le bundle
et android/app/build/generated/res/react/debugpour les actifs. Ainsi, les commandes complètes pour regrouper et créer manuellement l'APK avec le bundle et les actifs sont:
react-native bundle --dev false --platform android --entry-file index.js --bundle-output ./android/app/build/generated/assets/react/debug/index.android.bundle --assets-dest ./android/app/build/res/react/debug
puis
./gradlew assembleDebug
Chemin du bundle et des actifs
Notez que les chemins où gradle recherche le bundle et les actifs peuvent être sujets à changement. Pour savoir où se trouvent ces chemins, regardez le react.gradlefichier dans votre node_modules/react-nativerépertoire. Les lignes commençant par def jsBundleDir =et def resourcesDir =spécifient les répertoires dans lesquels gradle recherche respectivement le bundle et les actifs.