Private iOS app
We're a marketplace that connects our contractors with customers. We want to release an iOS app (React Native) for our contractors but we don't want the app to be on the public App Store. For Android we use the Alpha Channel feature, which gives us a link that we can send people to download the app.
The Enterprise program isn't suitable for us I think because we can't ask our contractors to enrol in a program?
The Custom B2B program doesn't seem to be a good fit since we are not selling or white labelling any apps?
Is there another option or am I wrong with the above mentioned assumptions?
Options for Distributing Your iOS App to a Limited Audience
Imagine you’ve built an iOS app for a limited set of users. Since it requires authentication, the app is useless to the general public. Is the public App Store the only option to deploy this app without express shipping devices through the mail? I’ve identified 5 options that you should know about.
1) The Public App Store
Distribute the app on the public App Store. Only people authorized to use the app can authenticate and use its features. Requiring a small price (such as 99 cents) will discourage casual installations. Submitting to the public App Store requires an iOS Developer license for $99 per year.
Pros
Apple provides the distribution service – The App Store. It is highly available and well understood by users. The App Store promotes your company on a highly visible marketplace.
Cons
The App Store approval process is required for initial app deployment and app updates. You may be required to make changes to the app. The approval process used to take weeks, but currently only takes a day or two. The App Store provides information about your app to competitors including a description of the app’s features, screenshots and an indication when the app is updated. If you charge a price for the app, 30% of the revenue goes to Apple.
2) iOS Developer Enterprise Program
The iOS Enterprise Distribution program allows a company to distribute their own “in-house” apps directly. It is intended for employees of the licensee company only and that licensee must be a company or organization with a DUNS number. The cost is $299 per year for this license compared to $99 per year for the iOS Developer License. A given device can have apps installed from only one iOS Enterprise License at a time. *Note: The following is an excerpt from the iOS Enterprise Distribution License Agreement “Internal Use Applications developed under this Agreement may be deployed on Deployment Devices in two ways: (1) deployment for internal use by Employees, and (2) deployment for use by Customers either on Your physical premises or under the direct supervision and physical control of Your Employees in other locations, subject to Apple’s right to review and approve such deployment as set forth herein.”
Pros
The App Store approval process is not required. The general public cannot see a listing for your app, purchase or install it. It is not on the App Store.
Cons
The Enterprise program is intended for employees and contractors of the licensee only. The licensee is responsible for distributing and updating the app. This can be done manually by email, making the app available on an Intranet site, through a Mobile Device Management System (MDM), etc. The cost is $299 per year for the Enterprise Developer Account compared to $99 per year for the iOS Developer Account. *Note: The Enterprise program does not enable you to deploy apps to the Public App Store. For that you need to be enrolled in the standard iOS Developer Program.
3) Custom B2B Apps Program
Apple has programs for volume purchasing and custom B2B apps. These programs operate from the online Business Store. The Volume Purchasing Program allows businesses to buy apps from the public App Store in bulk. Custom B2B Apps extend the Volume Purchase Program for custom B2B apps built by third-party developers. The third-party developer determines which Volume Purchase customer(s) can purchase a given app. Such apps are not available on the public App Store but only through the Business Store.
Pros
More convenient for larger distributions. Each individual installation does not require a user to make a purchase through the public app store and expense the cost. Instead, users are given a coupon that they can use to install the app. Apple provides the distribution service – the Business Store. This provides some features of an MDM. The general public cannot see the listing, purchase or install the app.
Cons
Requires App Store approval process for initial app and updates. If you charge a price for the app, 30% of the revenue goes to Apple. B2B apps are only available to businesses enrolled in the Volume Purchase Program. The Volume Purchase Program is limited to the following countries as of September, 2017: Australia, Austria, Belgium, Brazil, Canada, Czech Republic, Denmark, Finland, France, Germany, Greece, Hungary, Hong Kong, India, Ireland, Italy, Japan, Luxembourg, Mexico, Netherlands, New Zealand, Norway, Poland, Portugal, Singapore, South Africa, Spain, Sweden, Switzerland, Taiwan, Turkey, United Arab Emirates, the United Kingdom, and the United States. *Note: An iOS Developer License is required to use the Custom B2B Apps Program. Limiting an app to the B2B App Store is an option when submitting to the Public App Store.
4) Ad Hoc Distribution (intended for Testing)
Ad Hoc Distribution allows you to distribute apps to up to 100 iOS devices for testing. You must register these devices manually by their ID. Devices can be removed/replaced once each membership year). Ad Hoc Distribution is a feature of both the iOS Developer Program and the iOS Developer Enterprise Program. This may be all that is needed for a prototype or trade show.
Pros
The App Store approval process is not required. The general public cannot see the listing, purchase or install the app. Over-the-air installation from a hyperlink (hosted on your web server or on an iOS Beta Testing Service *mentioned next) or by emailing to a computer with iTunes installed (and then installing to the device).
Cons
Limited to 100 devices (devices can be removed/replaced once each membership year). The UDID (Unique Device IDentifier ) of each device must be associated with your provisioning profile. This is a manual process. Your team must manage deployments and updates. The related developer provisioning profile expires in one year. This means that the app will run on a given device for a maximum of one year. When the Developer Provisioning profile expires the app will need to be rebuilt with a new provisioning profile.
5) iOS Beta Testing Service: TestFlight
TestFlight is a free over-the-air platform used to distribute beta and internal iOS applications to team members. Developers can manage testing and receive feedback from their team with TestFlight’s Dashboard. TestFlight makes use of your iOS Enterprise License or Developer License to create Enterprise and Ad Hoc provisioned apps.
Pros
The same Pros as #2 iOS Developer Enterprise Program or #4 Ad Hoc Distribution depending on which iOS license you use. Distribution and feedback is managed with a free, cloud based service.
Cons
The same Cons as #2 iOS Developer Enterprise Program or #4 Ad Hoc Distribution depending on which license you use minus the Con about managing deployments and updates. According to Apple, TestFlight builds are only valid for 90 days. Apps cannot be opened after that period.
Other Testing Tools and Services
- AppCenter: iOS, Android, Windows, MacOS and more.
- Firebase App Distribution: iOS and Android distribution.
If you are not selling the app through the Apple App Store and have a target customer base, I would try the Microsoft App Center to distribute the app. It kind of works like TestFlight, but you don't have to worry about their review process.