Monaca Docs
  • Monaca
  • Create Your First App
  • Release Notes and Updates
    • Privacy Manifest Requirement for iOS Apps
    • Plugin uses-permission Tag Deduplication Feature
    • iOS Monaca Debugger Discontinuation & Alternative Features
    • Error submitting to iOS App Store (ITMS-90165)
    • Build error in cordova-custom-config
    • Cordova 11 changes
    • Cordova 10 changes
    • Cordova 9 changes
    • New Monaca CLI and Localkit
    • Migration from Cordova to Capacitor
  • Product Guides
    • Monaca Development Overview
    • Monaca Cloud IDE
      • Overview
      • Features in the Monaca Cloud IDE
      • Integrated Terminal
      • Editor Shortcuts
      • Project Dependencies
        • File and Folder Structure
        • JS/CSS Components
        • Cordova Plugins
        • Custom Cordova Plugins
      • Version Control
        • Introduction
        • GitHub Integration
        • Git SSH Integration
      • Monaca CI
        • Overview
        • Deploy Services
        • Deploy to Appetize.io
        • Deploy to DeployGate
        • Deploy to Firebase
      • Build
        • Building for iOS
          • Building an iOS App
          • Build Settings between Monaca and Xcode
        • Building for Android
        • Building for Electron
          • Building on Windows
        • Building for PWA
        • Building for Windows
        • Build Environment Settings
        • Common Build and Application Upload Errors
        • Build History
      • Distribution
        • App Store Distribution
          • App Store Connect Guide
          • iOS App Upload Feature
        • Google Play Distribution
        • Amazon Appstore Distribution
        • Non-market App Distribution
      • Download App Package
      • Tutorial
    • Monaca Localkit
      • Overview
      • Pairing and Debugging
      • Remote Building and Publishing
      • Troubleshooting Guide
      • Tutorial
    • Monaca CLI
      • Overview
      • Monaca CLI Commands
      • Pairing and Debugging
      • Project Dependencies
        • File and Folder Structure
        • JS/JSS Components
        • Cordova Plugins
        • Custom Cordova Plugins
      • Remote Building and Publishing
      • Troubleshooting Guide
      • Tutorial
    • Monaca Debugger
      • Functionalities
      • Installation
        • Monaca Debugger for Android
        • Monaca Debugger for iOS
        • Monaca Debugger for Android Emulator
      • Usage
      • Custom Build Debugger for iOS
      • iOS App Simulator Build
      • Troubleshooting Guide
      • Tutorials
    • Team Dashboard
    • Quick Viewer
    • Migrating from Other Platforms
      • Key Points
      • Cloud IDE preview function settings
      • Migrating from Angular
      • Migrating from Ionic
      • Migrating from React
      • Migrating from Vue
      • Migrating from PhoneGap
        • Key Differences
        • Guide for PhoneGap Build Users
        • Guide for PhoneGap CLI Users
        • Guide for PhoneGap Desktop App Users
      • Migrating from Telerik
  • Build App
    • Build for iOS
      • Creating a Private Key and CSR
      • Creating a Certificate
      • Updating Provisioning Profiles
  • Tutorials
    • Monaca Cloud IDE Tutorial
      • Part 1: Starting a Project
      • Part 2: Running Monaca Debugger with Monaca Cloud IDE
      • Part 3: Building a Monaca App
      • Part 4: Publishing a Monaca App
    • Monaca Localkit Tutorial
      • Part 1: Starting a Project
      • Part 2: Running Monaca Debugger with Monaca Localkit
      • Part 3: Building a Monaca App
      • Part 4: Publishing a Monaca App
    • Monaca CLI Tutorial
      • Part 1: Starting a Project
      • Part 2: Running Monaca Debugger with Monaca CLI
      • Part 3: Building a Monaca App
      • Part 4: Publishing a Monaca App
    • Electron Tutorial
      • How to Use a NPM Package
      • How to Use a Web API
    • Barcode Scanner Plugin
    • Cordova SQLite Storage Plugin
    • Cordova Google Analytics Plugin
    • Cordova Firebase Plugin
    • Cordova In-app Purchase Plugin
    • Cordova AppVersion Plugin
    • Cordova Ionic Keyboard Plugin
    • Cordova Social Sharing Plugin
    • NIFCLOUD mobile backend
    • Phonegap Push Plugin
  • API Reference
    • Monaca API
      • Monaca Cloud & Remote Build API Guide
      • Utilities
    • Core Cordova Plugins
      • Cordova 11.0
        • Battery Status Plugin
        • Camera Plugin
        • Device Plugin
        • Device Motion Plugin
        • Device Orientation Plugin
        • Dialogs Plugin
        • File Plugin
        • Geolocation Plugin
        • InAppBrowser Plugin
        • Media Plugin
        • Media Capture Plugin
        • Network Information Plugin
        • Splashscreen Plugin
        • Vibration Plugin
        • StatusBar Plugin
      • Cordova 10.0
        • Battery Status Plugin
        • Camera Plugin
        • Device Plugin
        • Device Motion Plugin
        • Device Orientation Plugin
        • Dialogs Plugin
        • File Plugin
        • Geolocation Plugin
        • InAppBrowser Plugin
        • Media Plugin
        • Media Capture Plugin
        • Network Information Plugin
        • Splashscreen Plugin
        • Vibration Plugin
        • StatusBar Plugin
        • Whitelist Plugin (Android Only)
      • Cordova 9.0
        • Battery Status Plugin
        • Camera Plugin
        • Contacts Plugin
        • Device Plugin
        • Device Motion Plugin
        • Device Orientation Plugin
        • Dialogs Plugin
        • File Plugin
        • File Transfer Plugin
        • Geolocation Plugin
        • Globalization Plugin
        • InAppBrowser Plugin
        • Media Plugin
        • Media Capture Plugin
        • Network Information Plugin
        • Splashscreen Plugin
        • Vibration Plugin
        • StatusBar Plugin
        • Whitelist Plugin (Android Only)
    • Third-party Cordova Plugins
      • Advanced HTTP Plugin
      • PhoneGap BarcodeScanner Plugin
      • Cordova Custom Config Plugin
      • DatePicker Plugin
      • Share Plugin (Android)
      • WebIntent Plugin (Android)
    • Monaca Power Plugins
      • Monaca HTML5 Resource Encryption
      • Monaca In-App Updater
      • Monaca Secure Storage
      • Barcode Scanner Plugin
      • Android build memory size setting
    • Service Integration
      • Repro
      • AppsFlyer
    • Configuration Files
      • Android
        • Android Configuration
        • config.xml
        • AndroidManifest.xml
      • iOS
        • iOS Configuration
        • config.xml
        • MonacaApp-Info.plist
  • Samples & Tips
    • Sample Apps
      • AdMob
      • Twitter Single Sign-on App
      • Facebook Single Sign-on App
      • Flickr
      • TODO App
      • BirthYear App
      • Break the Bricks
      • Train Catalog App
      • Omikuji Fortune Telling App
      • Clock App
      • Memo Application
      • RSS Reader App
      • Hello World App
    • Tips & Tricks
      • Playing Sound and Music
      • Control the Splash Screen
      • Using Database
  • Features
    • Push Notification
    • SNS Authentication
    • Database
  • FAQ
    • General
    • IDE
    • Build
    • Release
    • Subscription
      • How to Use Activation Code
    • Application
    • Usage
    • Debugger
  • Supported Environments
  • Trouble Shooting
    • Preview Log repeats to reload (Vue packages version mismatch error)
  • Monaca Product Website
  • 日本語
Powered by GitBook
On this page
  • For iOS apps
  • Install using Apple Configurator 2 (Mac Only)
  • Install using Xcode
  • Install using iTunes
  • Install using OTA deployment
  • For Android apps
  • Install using the ADB command
  • Install using a direct link

Was this helpful?

  1. Product Guides
  2. Monaca Cloud IDE
  3. Distribution

Non-market App Distribution

PreviousAmazon Appstore DistributionNextDownload App Package

Last updated 3 years ago

Was this helpful?

For iOS apps

You might want to distribute your application outside the App Store for these two purposes:

  1. Testing: Before releasing your app, you want to test it as much as you can. Thus, you might also want to distribute your app to users (testers) by other ways than the App Store.

  2. In-house applications: The application is made for internal use (in a company or organization) only.

For in-house distribution, you will need to have an account.

The differences between the Apple Developer and Apple Developer Enterprise programs regarding apps distribution:

Apple Developer Program

Apple Developer Enterprise Program

Beta OS Releases

Yes

Yes

Ad Hoc Distribution

Yes

Yes

App Store Distribution

Yes

No

In-house Distribution

No

Yes

TestFlight Beta Testing

Yes

No

Team Management

No

Yes

App Analytics

Yes

No

For more information about the differences between the two programs, please refer to .

There are two ways to distribute your pre-release apps for testing:

  1. using App Store Connect: requires a iOS Developer Account and takes time since it needs approval from Apple Review prior to the distribution.

  2. using Ad Hoc distribution: can be done with either iOS Developer or iOS Developer Enterprise accounts. Also, it doesn’t require the approval from Apple Review.

In-house distribution is for distributing your iOS apps securely to your employees. In other words, you can distribute your app to any company devices. However, if you want someone outside of your company to test your app or restrict the distribution to specific devices, you can use Ad Hoc distribution.

Ad Hoc distribution is for distributing your apps using Ad Hoc provisioning profile to up to 100 registered devices.

Both types of distribution have the same ways of app installation. The difference is the provisioning profile.

There are several ways to install your applications outside the App Store as shown in the following sections.

Install using Apple Configurator 2 (Mac Only)

  1. Connect your device to the PC.

  2. Open the Apple Configurator 2 and select your device. If you device doesn’t appear, please make sure that your device is properly connected to your Mac.

5. Click the Choose from my Mac button and browse the .ipa file. Then, the app will be installed on your device.

Install using Xcode

You can install your iOS app (.ipa file) via Xcode as follows:

  1. Connect your device to your PC.

  2. Open Xcode and go to Window → Devices .

  3. The Devices screen will open. Choose the device you want to install the app on.

Install using iTunes

iTunes 12.7 for Mac was released with a major change in the app. Apple has redesigned iTunes so that it focuses on sales of music, movies, TV shows, audiobooks, and podcasts. It no longer has an App Store for buying apps for your iPhone or iPad. Therefore, you can no long install your iOS App (.ipa file) through iTunes any longer.

  1. After the build is completed, download the .ipa file.

  2. Open iTunes and go to the App library.

  3. Drag and drop the downloaded .ipa file into the App library.

  4. Connect your device to iTunes and go to your device apps.

  5. Click Install and then Sync. See the example below:

Install using OTA deployment

OTA (Over-The-Air) deployment enables you to install your built apps via HTTPS.

  1. Build your application with either debug, ad-hoc or in-house build. For more

  2. Download the .ipa file after the build completes.

  3. Upload the .ipa file to the site you want.

  4. Create a .plist file for this built application. The .plist file should look like this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
    <dict>
        <key>assets</key>
        <array>
            <dict>
                <key>kind</key>
                <string>software-package</string>
                <key>url</key>
                <string>https://www.anysite.com/application/your_app.ipa</string>
            </dict>
        </array>
        <key>metadata</key>
        <dict>
            <key>bundle-identifier</key>
            <string>com.example.helloworld</string>
            <key>bundle-version</key>
            <string>1.0.0</string>
            <key>kind</key>
            <string>software</string>
            <key>title</key>
            <string>HELLO</string>
        </dict>
    </dict>
</array>
</dict>
</plist>

While creating .plist file, please pay attention to these points:

  • .plist file must be accessible via https protocol.

  • update bundle-identifier with the App ID.

  • specify correct path to the .ipa file.

5. Upload the .plist file to the site you want. Make sure this file can be accessed via HTTPS protocol.

6. Create a webpage embedded link to the uploaded .plist file using a special itms-services:// protocol.

<a href="itms-services://?action=download-manifest&amp; 
url=https://www.anysite.com/application/your_app.plist">
Download
</a>

7. After you get the link, use your device to access the link. Then, you will be prompted to install the application.

For Android apps

You might want to distribute your application outside the official markets such as Google Play Store and Amazon AppStore for these two purposes:

  1. Testing: Before releasing your apps, you want to test

    them as much as you can. Thus, you might want to distribute your

    apps to users (testers) by other ways than the official

    markets.

  2. Personal/Internal Purpose: The application is made for your own

    personal or internal use.

Install using the ADB command

ADB (Android Debug Bridge) is a tool that enables you to use terminal commands on your phone.

Prerequisite:

  1. Install Android SDK on your computer

  2. Locate the ADB path after the Android SDK installation

  3. Enable USB Debugging and allow the installation of the apps from sources

    other than the Play Store on your device.

To install your built app via the ADB command:

  1. Build your application with the debug build. For more details about

  2. After the build is completed, download the .apk file.

  3. Plug your device with a USB cable to your computer.

  4. Run the below command on your computer in the command window. Make sure to use the correct path to your .apk file.

adb install foo.apk

Install using a direct link

This is simply an installation through a direct link to your .apk file:

  1. Build your application with the debug build. For more details about

  2. After the build is completed, download the .apk file.

  3. Upload the downloaded file to any site you want.

  4. Go the link of the uploaded file from your device. Then, you will be prompted to install the application.

Please make sure make these settings on your device beforehand:

  • Enable USB debugging.

  • Allow installation of the apps from sources other than the Play Store.

See Also:

Install the program on your Mac from the App Store.

4. Click the button and select the Apps option.

Drag and drop your .ipa file into the Installed Apps as shown below:

Build your application with with the debug or ad-hoc build. For more details about the iOS build process, please refer to .

details about the iOS build process, refer to .

Android build process, please refer to .

Android build process, please refer to .

âž•
Apple Developer Enterprise Program
Choosing a Membership
Apple Configurator 2
Building an iOS App
Building an iOS App
Building for Android
Building for Android
Building for iOS
Building for Android
Google Play Distribution
App Store Distribution