In-house distribution for iOS apps
What are the different in-house app distribution methods for iOS?
Enterprise apps are custom-developed applications used within an organization. Unlike a store app, an enterprise app serves a business functionality and is meant for internal use by the employees in an organization. Thus, it necessitates the private distribution of apps to the intended users, which is possible via secure internal systems or a Unified Endpoint Management (UEM) solution.
The Apple Developer Enterprise Program lets you develop, test and deploy proprietary applications within your company. There are several ways of distributing an enterprise app on iOS devices. Depending on the use cases, you may choose either of the following distribution methods.
- App Store: This is the most commonly used app distribution method, primarily used when you are distributing the app to the general public.
- Ad hoc: This distribution option, available through the Apple Developer Program or Apple Developer Enterprise Program, lets you distribute the app directly to the devices registered in the developer account.
- Enterprise: Enterprise distribution helps with the internal distribution of apps directly to the employees in the organization.
- Development: This method is accepted if you want to distribute the app just to your Apple Developer Program team. It enables easy distribution of the app to testers with registered devices.
The distribution method selected for app deployment usually depends on the users who work with them and how the apps are scoped during the process. For instance, app distribution can be limited internally to the employees within a business entity. Or, instead, the organizations may choose to provide the apps to the general public.
What is the difference between in-house versus ad hoc distribution?
The ad hoc distribution method allows you to distribute apps to a limited number of devices registered with the developer website. It is the most suitable method for testing the applications developed. When the app is ready to be distributed to the testers in your development environment, you create an ad hoc provisioning profile that specifies the App ID, a set of devices (identified by their unique device ID) and a distribution certificate. The device IDs specified in the ad hoc provisioning profile also get added to the developer account. As you export an app using an ad hoc provisioning profile, the provisioning profile is also included in the app bundle. The distribution certificate will be used to sign the app’s IPA file. The app launches on the device only if the following conditions are met:
- The bundle ID of the app matches the App ID.
- The app’s signature equals the distribution certificate.
- The device ID is included in the provisioning profile.
It enables the distribution of apps through the Apple Developer Program or Apple Developer Enterprise Program. And this option is also ideal for distributing internal apps to a limited number of devices. (Note that the apps can be distributed to only those devices registered with the program, but the maximum number is limited to 100 devices per membership year). Also, apps not deployed on the App Store and distribution with no more than 100 employees benefit from this method. Ad hoc distribution is possible through iTunes or a web server.
Whereas, Enterprise Distribution facilitates the easy distribution of apps to the employees within your organization. Here, the apps are signed using Development provisioning profiles. The Development provisioning profile consists of the app ID, the devices associated with the team, and the development certificates. This profile permits the app to be launched on the device and specific app services during development.
It is the optimal distribution method if the organization has the Apple Developer Enterprise Program membership and the app is ready to be distributed to the users in an enterprise. And the significant advantage of this distribution method is that you can deploy the apps without App Review approval. An organization does not have to submit the app to Apple for review. Also, the proprietary apps distributed internally using the Apple Developer Enterprise Program do not limit the number of devices where the app is distributed. The Enterprise distribution of in-house apps can be performed via iTunes (locally), UEM, web server or emails.