Google Play (Android)React Native

How to Publish a React Native App on Google Play

Getting a React Native app onto Google Play requires navigating Android's build system, Gradle configurations, and the Play Console's evolving requirements. Unlike iOS, Android offers more flexibility but also more complexity with signing keys, multiple build formats, and device fragmentation. This guide covers the full journey from generating a signed Android App Bundle to going live on the Play Store.

Prerequisites

  • Android Studio installed with SDK 33+
  • A Google Play Developer account ($25 one-time fee)
  • Java Development Kit (JDK) 17 installed
  • Your app tested on multiple Android devices/emulators
  • React Native CLI environment configured

Step-by-Step Build Process

1

Generate a release signing key

Run `keytool -genkeypair -v -storetype PKCS12 -keystore my-upload-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000`. Store this keystore file securely — you'll need it for every future update. Losing it means you can never update this app.

2

Configure Gradle for release signing

Add your keystore details to android/gradle.properties (MYAPP_UPLOAD_STORE_FILE, MYAPP_UPLOAD_KEY_ALIAS, etc.). Then update android/app/build.gradle to reference these properties in the signingConfigs section.

3

Build the Android App Bundle (AAB)

From the project root, run `cd android && ./gradlew bundleRelease`. The AAB file will be at android/app/build/outputs/bundle/release/app-release.aab. Google Play now requires AAB format instead of APK for new apps.

4

Test the release build locally

Use `bundletool` to generate APKs from the AAB and install on a device: `bundletool build-apks --bundle=app-release.aab --output=app.apks --local-testing`. Then deploy with `bundletool install-apks --apks=app.apks`.

Code Signing & Certificates

Understand Play App Signing

Google Play App Signing manages your app's signing key on Google's servers. You upload with an upload key, and Google re-signs with the app signing key. This means if you lose your upload key, Google can reset it — unlike the old system where losing the key was catastrophic.

Enroll in Play App Signing

When creating your app in Play Console, you'll be prompted to enroll. Choose 'Let Google manage my app signing key' for new apps. Export and back up the upload key certificate for your records.

Store Submission Steps

1

Create the app in Google Play Console

Click 'Create app' in Play Console. Fill in app name, default language, app type (app vs game), and whether it's free or paid. Note: free apps cannot be changed to paid later.

2

Complete the store listing

Write a short description (80 chars) and full description (4000 chars). Upload a 512x512 app icon, feature graphic (1024x500), and at least 2 screenshots. Add a phone screenshot and optionally tablet/TV screenshots.

3

Fill in the content rating questionnaire

Answer the IARC questionnaire honestly about your app's content (violence, language, etc.). Misrepresenting content ratings can lead to app removal.

4

Set up pricing and distribution

Select countries for distribution. Set the pricing model. Opt in or out of Google Play's programs like Google Play Pass.

5

Upload the AAB and roll out

Go to Release > Production > Create new release. Upload your .aab file. Add release notes. Review and roll out to production. Google's review typically takes a few hours to a few days for new apps.

Common Rejection Reasons & Fixes

Policy: Deceptive Behavior (Misrepresentation)

Ensure your app does what the store listing says. Don't claim features your app doesn't have. React Native apps sometimes leave placeholder text from templates — remove all boilerplate.

Policy: Ads (Interstitial ad placement)

If using ads (AdMob, etc.), don't show interstitials on app launch or during loading screens. Ensure ads don't cover navigation elements. React Native ad libraries need proper placement logic.

Target API Level Requirements

Google requires targeting a recent Android API level. Update targetSdkVersion in build.gradle to at least API 34. Also update compileSdkVersion to match. Run compatibility tests after upgrading.

Missing Privacy Policy

All apps collecting personal data must have a privacy policy. Add a privacy policy URL in Play Console and within the app itself. This includes apps using analytics, crash reporting, or any network requests.

Pro Tips

  • Always use AAB format — it generates smaller, optimized APKs per device configuration
  • Enable ProGuard/R8 in build.gradle to shrink and obfuscate your code, reducing APK size significantly
  • Use the React Native upgrade helper (react-native-community/upgrade-helper) to keep your Android project current
  • Test on low-end devices — Android has massive fragmentation, and React Native performance varies across hardware
  • Set up internal testing tracks in Play Console to test before going to production

Skip the hassle. Let us handle it.

Publishing a React Native app on the Google Play (Android) involves dozens of steps, certificates, and potential rejection pitfalls. Our team handles the entire process for you — from build configuration to store approval.

Related Guides