DEV Community

Zilu Ramkrishna Rane
Zilu Ramkrishna Rane

Posted on

React Native Build APK Generate release mode APK for React-Native project to publish on PlayStore

Good Day All! I hope you are doing Good.

From last couple of days, Me and my friends were doing comparative study of ionic3 and react-native. During that period, we were struggling to generate release mode APK for React-Native project.

Finally, we came across following solution:

Create and then copy a keystore file to android/app

keytool -genkey -v -keystore mykeystore.keystore -alias mykeyalias -keyalg RSA -keysize 2048 -validity 10000

Setup your gradle variables in android/gradle.properties

MYAPP_RELEASE_STORE_FILE=mykeystore.keystore
MYAPP_RELEASE_KEY_ALIAS=mykeyalias
MYAPP_RELEASE_STORE_PASSWORD=*****
MYAPP_RELEASE_KEY_PASSWORD=*****

Add signing config to android/app/build.gradle

android {
signingConfigs {
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}

Generate your release APK:

cd android && ./gradlew assembleRelease

Your APK will get generated at: android/app/build/outputs/apk/app-release.apk

Special Thanks to Tyler Buchea : http://blog.tylerbuchea.com/react-native-publishing-an-android-app/

Oldest comments (26)

Collapse
 
emicarito92 profile image
Emicarito ★

Hi Zilu,

If you are in Windows the last command is cd android && gradlew assembleRelease

whitout the "./"

Collapse
 
textoro profile image
Rostyslav

Hi Zilu. Follow your instructions, obtain error:

Unable to load script. Make sure you're either running a Metro server (run 'react-native start') or that your bundle 'index.android.bundle' is packaged correctly for release.

Collapse
 
zilurrane profile image
Zilu Ramkrishna Rane

You get this error after running which command?
Could you please provide more details.

Collapse
 
egiesem profile image
Egi ESEM

don't run debug version, to create apk release version first you must run:
npx react-native run-android --variant=release
or
react-native run-android --variant=release

Then APK can be found in android/app/build/outputs/apk/release

Collapse
 
mrcflorian profile image
mrcflorian

Thanks for the tutorial! I've put up an article containing several errors that I encounter when building a release APK for React Native pretty frequently.

Collapse
 
zilurrane profile image
Zilu Ramkrishna Rane

Thanks mrcflorian

Collapse
 
anatechng profile image
Anaga Uche • Edited

I love your article, thanks

Collapse
 
ayesh_nipun profile image
Ayesh Nipun

Thanks for the article. The app was built without errors. But when I install it on my device and run the app, App keeps stopping with the message "App keeps stooping"

Collapse
 
rahilahmad profile image
rahilahmad

Hi, i have an issue when i run last command in terminal it show Build successful but my release folder is empty
can you help me to figure it out?

Collapse
 
skptricks profile image
skptricks

check this simple example : skptricks.com/2019/06/react-native...

Collapse
 
apk2d profile image
Apk2Down

The online APK downloader I found at the best Apk2Down provider for you, a reliable address for every device used.

Collapse
 
jbernibe profile image
jbernibe

Hello my friend, i did the procedure above, but dont work, it show me the next message :
"Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0"
Could you Please help me whit that.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.