Before you start
Make sure you have the following ready before opening the build flow:- Apple Developer Program membership (paid, required for iOS)
- Google Play Developer account (required for Android production)
- A bundle identifier set in your
app.jsonorapp.config.js(for example,com.yourcompany.yourapp) — this must match what you register in App Store Connect or Play Console - App icon — Openv2 can generate or upload one for you (see App icon below)
You don’t need Xcode, Android Studio, or a local build environment. Openv2 handles the Expo/EAS side in the cloud. You are responsible for your store accounts, credentials, and policy compliance.
Start a build
Open the build flow
From the header of any project, select the Build action. This opens the Expo build wizard modal.
Choose your platform
Select iOS or Android. Each platform has its own path through the wizard:
- Android — choose between an APK (useful for direct device installs and testing) or an AAB (required for Play Store production uploads)
- iOS — walks you through Apple sign-in and Expo/EAS account linkage, then triggers the build
Provide credentials
The wizard collects what it needs for each platform. For iOS this includes your Apple account sign-in and EAS linkage. For Android it covers signing key setup. Follow the prompts — the modal explains each requirement as you go.
Wait for the build
The modal tracks build status as the job runs. Build times vary depending on your project’s dependencies and the platform.
App icon
Before building, set your app icon so it appears correctly on device home screens and in the stores. You can generate an icon using Openv2’s AI or upload one of your own. Openv2 writes it toassets/images/icon.png and the adaptive icon paths in your project, and optionally stores it as a thumbnail for your project in the dashboard.
Native dependency issues
Some npm packages include native modules that require config plugins or are incompatible with Expo’s managed workflow. If the build wizard surfaces an error about a native dependency:- Read the error message — it usually names the package causing the problem.
- Ask the AI assistant to fix it: describe the error and ask it to replace the incompatible package or add the required config plugin.
- Rebuild once the fix is in place.
Iterating after a failed build
Build failures almost always have a clear cause in the logs. When a build fails:- Read the error output in the modal or build history.
- Copy the relevant error message and paste it into the chat — ask the AI assistant to diagnose and fix it.
- Commit the fix in the workbench, then start a new build from the header.
app.json configuration issues (wrong bundle ID, missing permissions, etc.).
What comes next
Once you have a binary, the next step is submitting it to a store or distributing it for testing.App Store
Submit your iOS build to Apple’s App Store and manage App Review.
Play Store
Upload your AAB to Google Play Console and roll out to Android users.
