How to Create an APK for Production Using Expo and Submit It to the Play Store
Introduction
So, you've built a fantastic React Native app with Expo, and now you're eager to publish it on the Google Play Store. But wait—how do you generate a production-ready APK? Worry not! In this guide, I'll walk you through the entire process step by step.
Step 1: Install Expo CLI (If Not Installed)
First, ensure you have Expo CLI installed. If not, run:
npm install -g expo-cli
Also, make sure you’re logged in to your Expo account:
expo login
Step 2: Configure Your App
Before generating the APK, check your app.json
or app.config.js
file. Update the necessary details like the app name, package name, and version.
Example app.json
:
{
"expo": {
"name": "MyAwesomeApp",
"slug": "myawesomeapp",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"android": {
"package": "com.yourcompany.myawesomeapp",
"versionCode": 1,
"permissions": []
}
}
}
Ensure that android.package
is unique (matching your domain, like com.yourcompany.myapp
).
Step 3: Build the APK File
Since Expo no longer supports “expo build:android”, you’ll need to use EAS Build instead. Run the following command:
npx expo install eas-cli
Then, initialize EAS:
eas build:configure
Now, to build an APK, use:
eas build -p android --profile preview
This will generate an APK for testing purposes. For a Play Store-ready build, use:
eas build -p android --profile production
Once the build is complete, you’ll get a download link for your APK/AAB file.
Need to Convert .AAB to .APK?
If you want to generate an APK from an AAB file for testing, check out this guide.
Step 4: Sign Your APK (If Required)
Expo automatically handles signing, but if you want to manage keys manually, generate a keystore:
eas credentials
Follow the prompts to generate and download your keystore.
Step 5: Test Your APK on a Physical Device
Download the APK file and install it on your phone:
adb install myapp.apk
Alternatively, share the download link generated by Expo.
Step 6: Submit to Google Play Store
1. Create a Google Play Developer Account
If you haven’t already, register at Google Play Console (one-time fee of $25).
2. Create a New App
Click Create app
Set your app name, language, and category
Choose App (not Game) and Free/Paid option
3. Upload Your AAB File
Since Google now requires AAB instead of APK, make sure you generated the AAB file (--profile production
). Upload it under Production > Create new release.
4. Complete Store Listing
App Name & Description
Screenshots (Minimum 2, for phones and tablets)
Feature Graphic (1024x500 px)
Privacy Policy URL
5. Submit for Review
Once everything is set, click Submit for Review. Google will review your app (typically within 2–7 days).
Conclusion
Congratulations! 🎉 You've successfully created a production-ready APK (or AAB) and submitted your app to the Google Play Store. Now, grab some chai ☕ and wait for your app to go live!
If you found this guide helpful, share it with your fellow developers. 🚀 Happy coding!