Skip to main content
A “build” in Openv2 produces a real binary — an APK or AAB for Android, or an IPA for iOS — using Expo and EAS under the hood. This is distinct from the in-browser preview, which runs your app’s web target. You need an actual binary to submit to the App Store or Play Store, or to install directly on a device.

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.json or app.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

1

Open the build flow

From the header of any project, select the Build action. This opens the Expo build wizard modal.
2

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
3

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.
4

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.
5

Download the artifact

When the build finishes, a download link appears. You can also find past builds in build history. If a download link doesn’t appear after the build shows as complete, try refreshing the page or contact Openv2 support.

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 to assets/images/icon.png and the adaptive icon paths in your project, and optionally stores it as a thumbnail for your project in the dashboard.
Apple requires a 1024×1024 PNG with no transparency for the App Store. Android adaptive icons need a foreground and background layer. If you upload a single image, Openv2 handles the resizing and file placement.

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:
  1. Read the error message — it usually names the package causing the problem.
  2. Ask the AI assistant to fix it: describe the error and ask it to replace the incompatible package or add the required config plugin.
  3. Rebuild once the fix is in place.
Heavy native modules outside Expo’s supported set may be impractical in Openv2’s WebContainer environment. Identify any problematic dependencies early, before investing time in the rest of your build.

Iterating after a failed build

Build failures almost always have a clear cause in the logs. When a build fails:
  1. Read the error output in the modal or build history.
  2. Copy the relevant error message and paste it into the chat — ask the AI assistant to diagnose and fix it.
  3. Commit the fix in the workbench, then start a new build from the header.
Most failures fall into a few categories: missing or mismatched credentials, native module conflicts, or 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.