Skip to main content

Publish a React Native App to Google Play

This guide covers the Android-specific release steps after your Instamobile React Native app runs locally and passes the general release checklist.

Quick Answer​

Use your own Android application id, Firebase Android config, app signing, privacy policy, store listing assets, and production backend. Build a signed Android App Bundle, upload it to Google Play Console, complete Data Safety and store metadata, test through an internal track, then promote the release.

Prerequisites​

Before starting the Android release:

  • the app runs locally on Android;
  • the app has your branding;
  • the Android application id is unique;
  • Firebase Android config is replaced with your google-services.json;
  • signing is configured;
  • push, payments, maps, or other native services are configured if used;
  • the general release checklist is complete.

Start here:

1. Configure Android App Identity​

Open the Android project in Android Studio or inspect the Gradle files:

FileCheck
android/app/build.gradleApplication id, version code, version name, build types, signing.
android/app/src/main/AndroidManifest.xmlPermissions, activities, services, deep links.
android/app/google-services.jsonFirebase Android config.
android/gradle.propertiesAndroid and React Native build flags.

Use your own applicationId. If you change it, update Firebase and download a new google-services.json.

2. Configure Firebase and Native Services​

For Firebase-backed apps, confirm that android/app/google-services.json belongs to your Firebase project.

Also verify:

  • Firebase Auth providers;
  • Firestore rules and indexes;
  • Storage rules for media upload;
  • Firebase Functions, if included;
  • push notifications and FCM;
  • maps API keys and restrictions;
  • Google Pay, if used;
  • App Check, when ready for production enforcement.

3. Configure Release Signing​

Google Play requires a signed release build.

Use Google Play App Signing in Play Console and keep your upload key secure. Store signing files outside public repos and do not share private keys.

Common release signing inputs:

  • upload keystore file;
  • key alias;
  • keystore password;
  • key password.

Use environment variables or secure local Gradle properties for secrets. Do not commit real signing credentials.

4. Build an Android App Bundle​

From the app folder:

cd android
./gradlew bundleRelease
cd ..

The generated .aab is usually under:

android/app/build/outputs/bundle/release/

If the build fails, check the full Gradle error. Common causes include missing SDKs, signing config, package namespace conflicts, Firebase config mismatch, or native dependency issues.

5. Create the App in Google Play Console​

In Google Play Console:

  1. create a new app;
  2. choose app name, default language, app/game, and free/paid status;
  3. complete store listing;
  4. upload app icon, screenshots, and feature graphic;
  5. add privacy policy URL;
  6. complete App Content forms;
  7. complete Data Safety;
  8. complete content rating;
  9. configure target audience;
  10. set pricing and distribution.

Use screenshots from your customized build, not demo screenshots.

6. Upload to an Internal Track​

Upload the .aab to an internal testing track first.

Test:

  • clean install;
  • sign-up and sign-in;
  • main feature flow;
  • Firebase reads and writes;
  • media upload if used;
  • push notifications if used;
  • payments if used;
  • deep links if used;
  • app restart and background behavior;
  • crashes in Play Console pre-launch report.

Fix issues before promoting to closed testing, open testing, or production.

7. Complete Data Safety​

Google Play Data Safety must match real app behavior.

Review:

  • account data;
  • personal information;
  • photos and videos;
  • location;
  • purchases;
  • messages;
  • analytics and diagnostics;
  • third-party SDK data collection;
  • data deletion policy.

If your app uses Firebase, payments, maps, push notifications, analytics, or social login, include those data flows accurately.

8. Submit the Release​

When internal testing is clean:

  1. create a production release or promote from a testing track;
  2. add release notes;
  3. review policy warnings;
  4. confirm countries and distribution;
  5. submit for review.

Google may require additional testing, policy details, or account verification depending on your app category and account status.

Common Android Release Issues​

The application id is already used​

Choose a unique applicationId, update Firebase Android app config, and download a new google-services.json.

bundleRelease fails​

Check signing config, Android SDK installation, Gradle errors, native dependency compatibility, and missing Firebase config files.

Google Play rejects Data Safety​

Review every SDK and feature in the app. Data Safety must match what the app and third-party services collect, share, and retain.

Push notifications do not work in internal testing​

Check FCM configuration, notification permissions, device token registration, backend send logic, and whether the release build uses the correct Firebase project.

Next Steps​

Documentation updates

Keep your build moving

Get important setup notes, new guides, and useful product updates without a noisy weekly newsletter.