Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save cagataycali/9e156f1d2936cabef25f09caa60e6bde to your computer and use it in GitHub Desktop.
Save cagataycali/9e156f1d2936cabef25f09caa60e6bde to your computer and use it in GitHub Desktop.
Compile and deploy React Native Android app of Release version to device.
Disclaimer: The instructions are the collective efforts from a few places online.
Nothing here is my original. But I want to put them together in one place to save people from spending the same time as I did.
First off, bundle.
==================
1. cd to the project directory
2. Start the react-native packager if not started
3. Download the bundle to the asset folder:
curl "http://localhost:8081/index.bundle?platform=android&dev=false&minify=true" -o "android/app/src/main/assets/index.android.bundle"
(Credit: https://github.com/facebook/react-native/issues/2743#issuecomment-140697340)
Note: make sure there is assets folder under android/app/src/main beforehand, and check if there is any error in the packager terminal window after curl.
Secondly, compile release version.
==================================
1. cd to {YOUR_PROJECT}/android
2. ./gradlew assembleRelease
Thirdly, sign the apk.
======================
1. To generate keystore
keytool -genkey -v -keystore my-keystore.keystore -alias name_alias -keyalg RSA -validity 10000
2. To sign an apk
jarsigner -verbose -keystore <path of my-keystore.keystore> <path of apk> alias_name
3. To zip align an apk
zipalign -f -v 4 <your.apk > <your_aligned.apk>
(Credit: http://stackoverflow.com/questions/26828372/how-to-sign-a-modded-an-apk-on-a-mac-with-apktool)
Lastly, install apk to device.
==============================
1. connect your phone to computer
2. adb install {PATH_TO_APK}
@cagataycali
Copy link
Author

~/Library/Android/sdk/build-tools/27.0.3/zipalign

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment