'How to build react native android app for production?
I've seen new release of react native for android and tried some examples. It works only with USB debug mode and "adb reverse tcp:8081 tcp:8081". How can I build android app for "production" including all dependencies and without react web-server connections. Thank you.
Solution 1:[1]
You will have to create a key to sign the apk. Use below to create your key:
keytool -genkey -v -keystore my-app-key.keystore -alias my-app-alias -keyalg RSA -keysize 2048 -validity 10000
Use a password when prompted
Once the key is generated, use it to generate the installable 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/
Generate the build using gradle
cd android && ./gradlew assembleRelease
Upload the APK to your phone. The -r flag will replace the existing app (if it exists)
adb install -r ./app/build/outputs/apk/app-release-unsigned.apk
A more detailed description is mentioned here: https://facebook.github.io/react-native/docs/signed-apk-android.html
Solution 2:[2]
As for me, I add in my package.json to "scripts":
"release": "cd android && ./gradlew assembleRelease"
And then in terminal I use:
npm run release
Or with yarn:
yarn release
Solution 3:[3]
I have put together some steps that worked for me. Hopefully it would save time.
For bundling the package to work in local you need to do
$ curl "http://localhost:8081/index.android.bundle?platform=android" -o "android/app/src/main/assets/index.android.bundle"
Then for compiling apk
$ ./gradlew assembleRelease
I have added detailed instructions at : https://github.com/shyjal/reactnative-android-production
Solution 4:[4]
To create a bundle of your android application to release application on play store.
cd /android
sudo ./gradlew bundleRelease
go to the android/build/outputs/bundle/release/app-release.apk
Upload this bundle on play store console.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Sofiane Belhadj Kacem |
| Solution 2 | |
| Solution 3 | |
| Solution 4 | Ă–mer Ayhan |
