Construire et installer apk non signé sur le périphérique sans le serveur de développement?
comme je suis nouveau dans react-native donc s'il y a quelque chose de mal dans steps faites le moi savoir.
j'ai construit une application android natif react en utilisant la commande selon la documentation
réagissent-android native
la commande suivante a été utilisée pendant le fonctionnement sur l'appareil:
réagir indigènes de l'exécution android
qui me donne le rendement de 2 fichiers apk dans mon projectfolder/android/app/build/sorties/apk
maintenant, lorsque j'installe cet apk après l'installation, il demande à un serveur de développement de se connecter pour regrouper les JS. Mais mon exigence est que l'utilisateur n'a pas à lutter avec le serveur de développement, il est nécessaire d'installer l'apk et tout est fait.
Ont traversé quelques questions stackoverflow mais pas utile pour construire apk non signé qui ne nécessite pas de serveur de développement.
pouvez-vous m'aider à trouver comment construire et non signé apk dans react native?
7 réponses
vous devez créer manuellement le bundle pour une construction de débogage.
Bundle debug:
#React-Native 0.49.0+
react-native bundle --dev false --platform android --entry-file index.js --bundle-output ./android/app/build/intermediates/assets/debug/index.android.bundle --assets-dest ./android/app/build/intermediates/res/merged/debug
#React-Native 0-0.49.0
react-native bundle --dev false --platform android --entry-file index.android.js --bundle-output ./android/app/build/intermediates/assets/debug/index.android.bundle --assets-dest ./android/app/build/intermediates/res/merged/debug
ensuite pour construire les APK après empaquetage:
$ cd android
#Create debug build:
$ ./gradlew assembleDebug
#Create release build:
$ ./gradlew assembleRelease #Generated `apk` will be located at `android/app/build/outputs/apk`
P. S. une autre approche pourrait être de modifier les scripts gradle.
veuillez suivre ces instructions.
regrouper vos js:
react-native bundle --dev false --platform android --entry-file index.android.js --bundle-output ./android/app/build/intermediates/assets/debug/index.android.bundle --assets-dest ./android/app/build/intermediates/res/merged/debug
créer debug apk:
cd android/
./gradlew assembleDebug
alors vous pouvez trouver votre apk ici:
cd app/build/outputs/apk/
Avec moi, dans le répertoire du projet exécutez les commandes suivantes.
pour l'ancienne version de react native (vous verrez index.Android.js en root):
mkdir -p android/app/src/main/assets && rm -rf android/app/build && 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 && cd android && ./gradlew clean assembleRelease && cd ../
Pour réagir natif de nouvelle version (il suffit de voir l'index.js en root):
mkdir -p android/app/src/main/assets && rm -rf android/app/build && react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.bundle --assets-dest android/app/src/main/res && cd android && ./gradlew clean assembleRelease && cd ../
le fichier apk sera généré à:
- Gradle < 3.0: android / app/build/outputs/apk/
- Gradle 3.0+: android/app/build/sorties/apk/presse/
pour L'utilisateur Windows si toutes les étapes ont suivi correctement de ceci: https://facebook.github.io/react-native/docs/signed-apk-android.html
vous devez exécuter seulement: gradlew assembleRelease
et votre fichier sera:
- app-libération.apk
- app-version-non-alignées.apk
lieu: E:\YourProjectName\android\app\build\outputs\apk
après avoir suivi la première réponse , vous pouvez lancer votre application en utilisant
react-native run-android --variant=debug
et votre application fonctionnera sans nécessité pour le packager
je suis sur réagir natif 0.55.4, en gros j'ai eu de regrouper manuellement:
react-native bundle --dev false --platform android --entry-file index.js --bundle-
output ./android/app/build/intermediates/assets/debug/index.android.bundle --assets-
dest ./android/app/build/intermediates/res/merged/debug
puis connectez votre périphérique via usb, activez le débogage usb. Vérifier le dispositif connecté avec adb devices
.
enfin lancer react-native run-android
qui installera le debug apk sur votre téléphone et vous pouvez l'exécuter très bien avec le serveur dev
Note:
- à partir de 0.49.0, le point d'entrée est un seul
index.js
-
gradlew assembleRelease
ne génère que les APK non signés qui ne peuvent pas être installés
Changez Dans le dossier android et lancez ./gradlew assembleRelease
pour construire le fichier release que vous pouvez envoyer à votre appareil android. La version apk n'a pas besoin que le serveur dev tourne.