Skip to main content

Mobile Publishing Overview

Mobile publishing distributes WaveMaker React Native applications to end users through app stores, enterprise channels, or testing platforms. This involves taking signed application packages (APK, AAB, IPA) built from your WaveMaker project and submitting them to distribution channels where users can install them.

Publishing is distinct from building. Building generates signed packages from your WaveMaker project using AppChef, wm-reactnative-cli, or Expo EAS Build. Publishing takes those built packages and submits them to Google Play Store, Apple App Store, enterprise distribution systems, or testing platforms.


WaveMaker Publishing Workflow

WaveMaker mobile app publishing follows a structured workflow from Studio to distribution.

1. Build signed packages

Build your WaveMaker React Native app using one of these methods:

  • AppChef – Export React Native zip from WaveMaker Studio, upload to AppChef, configure certificates and build type, download signed APK/AAB/IPA
  • wm-reactnative-cli – Export project from Studio, build locally using CLI with certificates, generate signed packages
  • Expo EAS Build – Export project as Expo-compatible, use Expo EAS Build service for cloud builds

2. Download build artifacts

After successful build in AppChef or build tool, download the signed packages:

  • Android: APK (for direct install/testing) or AAB (required for Play Store production)
  • iOS: IPA file signed with distribution certificate and provisioning profile

AppChef provides QR codes for quick installation on test devices without uploading to stores.

3. Submit to distribution channels

Upload downloaded packages to your chosen distribution channel:

4. Monitor and update

After release, monitor crash reports, user feedback, and ratings. Publish updates by rebuilding in AppChef with incremented version numbers and uploading to stores following the same workflow.


Distribution Channels

WaveMaker React Native apps can be distributed through multiple channels depending on target audience and use case.

Google Play Store – Primary public distribution for Android. Requires Google Play Console account ($25 one-time), signed AAB file (generated by AppChef with production certificate), and compliance with Play Store policies. Supports staged rollouts, multiple testing tracks (Internal, Closed, Open, Production), and global reach to billions of Android devices.

Apple App Store – Primary public distribution for iOS. Requires Apple Developer Program membership ($99/year), signed IPA file (generated by AppChef with distribution certificate and provisioning profile), and compliance with App Store Review Guidelines. Includes TestFlight for beta testing and supports phased releases over 7 days.

Enterprise Distribution – Internal company distribution without public app stores. iOS requires Apple Developer Enterprise Program ($299/year) with enterprise certificates uploaded to AppChef. Android supports Managed Google Play, MDM systems, or direct APK distribution via AppChef QR codes. Used for proprietary business apps and internal tools.

Testing Channels – Beta and UAT distribution before public release. Includes TestFlight (iOS with IPA from AppChef), Play Console testing tracks (Android with APK/AAB from AppChef), Firebase App Distribution (upload APK/IPA from AppChef), and direct installation via AppChef-generated QR codes for rapid internal testing.


Prerequisites for Publishing

Before publishing WaveMaker mobile applications, specific requirements must be met.

Built application packages:

  • Android: Signed APK or AAB file built in AppChef or via wm-reactnative-cli
  • iOS: Signed IPA file built in AppChef or via wm-reactnative-cli

Developer accounts:

  • Google Play Console – $25 one-time registration fee, Google account, identity verification
  • Apple Developer Program – $99/year membership, Apple ID, identity verification
  • Apple Enterprise Program – $299/year for enterprise distribution only (organizations with 100+ employees)

Code signing assets (uploaded to AppChef):

  • iOS: Distribution certificate (P12 file) and App Store provisioning profile generated from Apple Developer Portal
  • Android: Production keystore (.keystore or .jks file) with alias and passwords generated using keytool
  • Certificates uploaded to AppChef, encrypted and secured, passwords required for unlock (24-hour validity)

Store assets and metadata:

  • App name, description, and keywords
  • Platform-specific screenshots for required device sizes (iPhone 6.5"/5.5", iPad 12.9" for iOS; phone/tablet for Android)
  • App icon in required sizes (1024x1024 for iOS, 512x512 for Android)
  • Privacy policy URL (required if collecting user data)
  • Content rating questionnaire completion

Compliance requirements:

  • Agreement to platform terms and policies
  • Privacy practices disclosure (data safety section)
  • Data handling transparency
  • Export compliance declaration (if applicable)

Publishing Workflow

The publishing workflow follows a consistent pattern across platforms using WaveMaker tools.

1. Build application package in WaveMaker

  • Open your React Native project in WaveMaker Studio
  • Export React Native zip from Build menu → Manual Build or Open AppChef
  • Upload React Native zip to AppChef
  • Configure build type (Development or Production)
  • Select or upload certificates (iOS: P12 + provisioning profile, Android: keystore)
  • Unlock certificates by providing passwords (valid for 24 hours)
  • Trigger build and wait for completion
  • Download signed APK/AAB (Android) or IPA (iOS) from AppChef
  • Alternative: Use wm-reactnative-cli to build locally or export to Expo and use EAS Build

2. Set up developer account

  • Register with Google Play Console ($25 one-time) or Apple Developer Program ($99/year)
  • Complete account verification and payment
  • Accept platform agreements and policies

3. Create app listing

  • Android: Navigate to Play Console, create new app, provide app details
  • iOS: Navigate to App Store Connect, create new app record with bundle ID
  • Define app name (must match build configuration bundle identifier)
  • Upload store assets (screenshots, feature graphics, icons)
  • Configure pricing, availability, and distribution countries
  • Complete content rating and data safety declarations

4. Upload application package

  • Android: Navigate to Play Console → Production or Testing track → Create release → Upload AAB downloaded from AppChef
  • iOS: Use Transporter app or Xcode Organizer to upload IPA downloaded from AppChef to App Store Connect
  • Configure release notes and version information
  • Set rollout strategy (immediate, scheduled, or phased/staged)

5. Submit for review (if required)

  • Android: Automated checks and minimal manual review for most apps (hours to days typical)
  • iOS: Full manual human review for all submissions (24-48 hours typical)
  • Monitor review status in console
  • Address any review feedback, policy violations, or rejection reasons

6. Release to users

  • Upon approval, release according to chosen strategy
  • Immediate: App goes live instantly after approval
  • Scheduled: Trigger release at specific date/time
  • Phased/Staged: Gradual rollout (Android: custom percentages, iOS: 7-day automatic rollout)
  • Monitor post-release metrics, crash reports, and user feedback

Platform Differences

iOS and Android publishing processes differ significantly due to platform philosophies and policies.

AspectAndroid (Play Store)iOS (App Store)
Account cost$25 one-time$99/year
Package formatAPK or AAB (AAB required)IPA
Review processAutomated + minimal manualFull manual review
Approval timeHours to days24-48 hours typical
Update processFaster, less restrictiveAll updates reviewed
Content policiesMore permissiveStricter guidelines
Testing platformPlay Console tracksTestFlight
Beta testersUnlimited (internal: 100)10,000 (internal: 100)
Rejection rateLowerHigher

Android publishing characteristics:

  • More automated review process with policy checks
  • Faster approval for most apps (hours to days)
  • Flexible update policies, faster iteration
  • Multiple testing tracks built-in (Internal, Closed, Open, Production)
  • App signing can be delegated to Google (Play App Signing recommended)
  • AAB format required for Play Store (AppChef generates AAB for production builds automatically)
  • APK available from AppChef for direct testing via QR codes

iOS publishing characteristics:

  • Manual human review required for all submissions and updates
  • Stricter content and functionality guidelines (App Store Review Guidelines)
  • All updates go through full review process (even bug fixes)
  • TestFlight tightly integrated for beta testing (upload IPA from AppChef)
  • Phased releases available (automatic 7-day rollout: 1% → 2% → 5% → 10% → 20% → 50% → 100%)
  • IPA must be signed with distribution certificate and provisioning profile uploaded to AppChef
  • Cannot promote TestFlight builds to production (must upload new IPA)

Distribution Strategy Considerations

Choosing the right distribution channel depends on application purpose, target audience, and organizational requirements.

Choose public app stores when:

  • Targeting general consumers or broad user base
  • Maximizing discoverability and reach through store search and browsing
  • Monetization through app stores required (in-app purchases, paid apps)
  • Leveraging platform credibility and trust signals
  • Standard consumer app use case with App Store/Play Store distribution infrastructure

Choose enterprise distribution when:

  • Internal company use only (employees or authorized partners)
  • Proprietary business logic, trade secrets, or sensitive business data
  • Faster deployment cycles needed without multi-day app store review delays
  • App violates public store policies but serves legitimate enterprise purpose
  • Distribution limited to specific organizations via MDM or private stores

Use testing channels for:

  • Pre-release validation and QA testing before public launch
  • Beta testing with select users to gather feedback
  • Identifying bugs and crashes in real-world usage
  • Internal UAT and stakeholder review cycles
  • Iterative testing without store submission overhead
  • Quick distribution via AppChef QR codes for internal testing (scan and install directly)

Updates and Version Management

Publishing is not one-time—WaveMaker mobile applications require ongoing updates for features, bug fixes, and platform compatibility.

Version semantics:

  • Version name: User-facing version string (e.g., "1.2.3") configured in WaveMaker project config.xml
  • Version code (Android): Integer that must increase with each release (e.g., 1, 2, 3...)
  • Build number (iOS): Must increase with each App Store submission

Update workflow:

  1. Update version numbers in WaveMaker project configuration (config.xml)
  2. Export updated React Native zip from WaveMaker Studio
  3. Upload to AppChef and configure build with same certificates used for initial release
  4. Unlock certificates by providing passwords (automatically locked after 24 hours)
  5. Build and download updated signed APK/AAB (Android) or IPA (iOS)
  6. Upload to Play Console or App Store Connect
  7. Configure release notes describing changes
  8. Submit for review (iOS always reviewed, Android typically faster automated review)
  9. Release to users using same deployment strategy as initial release

Best practices:

  • Maintain clear versioning strategy across all builds
  • Test updates on beta channels first (Play Internal/Closed testing, TestFlight) before production
  • Use AppChef QR codes for rapid internal testing of update builds
  • Monitor crash reports and feedback immediately post-update
  • Plan rollback strategy if critical issues emerge (cannot force downgrade, must release new fix)
  • Communicate update changes to users through detailed release notes
  • Keep certificates backed up externally and synchronized in AppChef
  • Re-upload certificates to AppChef if they expire or are renewed

Summary

Key points about WaveMaker mobile publishing:

  • Purpose – Distribute WaveMaker React Native apps to end users through app stores, enterprise systems, or testing platforms
  • Workflow – Studio → Export React Native zip → AppChef Build → Download signed package → Upload to distribution channel
  • Channels – Play Store (AAB from AppChef), App Store (IPA from AppChef), enterprise (MDM/QR codes), testing (TestFlight/Play tracks/QR codes)
  • Prerequisites – AppChef-built packages, developer accounts, certificates uploaded to AppChef, store assets
  • Platform differences – iOS stricter review (24-48 hours), Android faster approval (hours to days), different formats (AAB vs IPA)
  • AppChef integration – Certificates encrypted and locked (24-hour unlock), QR codes for direct testing, development and production builds
  • Ongoing – Updates follow same workflow, version management critical, test on beta channels first
  • Strategy – Choose channel based on audience (consumers vs employees), distribution needs, and review tolerance

Build Documentation:

Publishing Documentation:

External Resources: