Choosing the Right Distribution Method for Your iOS Applications.
During my time at Apple, one of the biggest areas of confusion that I saw was developers trying to choose the correct method for distributing their app. Apple offers many different ways to distribute applications and each one has a specific purpose. Today we are going to dive into the different methods of distribution and when to use each one depending on your distribution needs.
App Store Distribution:
The first type of distribution we will cover today is the most common type of distribution, App Store Distribution. To distribute an app on the App Store, you or your organization must first hold a paid Apple Developer Program membership. This membership costs $99.00 annually and allows for submission and distribution on the App Store. This method of distribution is to be used when you are attempting to release an app to the general public.
Some things to know about this distribution method include the fact that the app must belong to yourself. Apple no longer allows companies or individuals to publish/host applications on their Apple Developer Program membership for any other organization. If you attempt to submit an app under your program for a different organization, you will likely get rejected by the App Review team and informed that the company that owns the application must have their own Apple Developer Program to submit the application. You can find more information about the Apple Developer Program here.
Custom Apps for Business:
The next type of distribution we will discuss today is custom apps for business or B2B apps (business to business). This type of distribution is if you are developing an app for a specific business and would only like them to be able to utilize the application. These apps do not typically go live on the App Store and must be sent directly to the organization that you developed the app for.
To utilize this type of distribution, two programs will be involved in the process. The developer of the app will need a paid Apple Developer Program membership, while the organization receiving the app will need an Apple Business Manager account. The Apple Business Manager program is a free program to sign up for and does not have an annual cost like the Apple Developer Program. Distributing apps through the Apple Business Manager program typically involves distribution through an MDM provider (mobile device management), but can also achieve distribution through Apple Configurator 2. You can find more information about distributing custom apps for business here.
Another form of distribution is if you are looking to distribute your applications internally throughout your organization directly to employees. This distribution type occurs with the Apple Developer Enterprise Program. This program allows for internal distribution of applications without needing App Review approval. This means that you can consistently update your applications and send out the latest builds without waiting for a review.
There are many things to note about this type of distribution due to the nature fo the program itself. The Apple Developer Enterprise Program goes through an extremely thorough review process and only organizations that meet a strict criteria are allowed to have this type of membership. Some of the requirements include that your organization must have at least 100 employees. The types of apps you are looking to distribute may also be taken into consideration when reviewing your application for this membership.
The Apple Developer Enterprise Program costs $299.00 annually. If you meet the criteria for this program and are submitting an application, you can expect to wait at least a month for the review process to complete, although there are no guaranteed timeframes for this review process. You can find more information about the Apple Developer Enterprise Program here.
So what happens if you want to distribute internally to your own employees but do not meet the requirements for the Apple Developer Enterprise Program? Well, luckily there are even more distribution options available to you through the standard Apple Developer Program. One of these types of distribution is Ad-Hoc distribution.
Ad-Hoc distribution through the Apple Developer Program will allow you to distribute apps directly to up to 100 devices that are registered to your Apple Developer Program membership. This distribution, similar to the Apple Developer Enterprise Program, does not require the App Review process. This type of distribution is ideal if you are looking to distribute an internal application that is not acceptable for the App Store and have less than 100 employees/individuals that you are looking to distribute to. You can find more information about Ad-Hoc distribution here.
The final type of distribution we are going to discuss today is distribution through TestFlight Beta Testing. Over the years TestFlight has evolved and become a powerhouse for testing applications before release. There are multiple ways that you can opt to distribute your apps to testers. You can choose to either distribute to internal testers (people within your organization), external testers (the general public), or even through the new TestFlight Public Link.
Some important notes regarding TestFlight Beta Testing include the limitations to the number of testers that you can invite. For internal testers, you are permitted to have up to 25 testers for a specific app. If you are opting for external testers, this number raises drastically to 10,000 testers.
When testing an app for internal testers, you are not required to have the app approved through the App Review process, however you are required to have the app approved through App Review if you are inviting external testers to the application. Applications distributed through TestFlight Beta Testing will stay active for 90 days, which gives you ample time to test applications before the builds expire. You can find more information regarding TestFlight Beta Testing here.
This articles covers pretty much every distribution method available for iOS applications. As you now know, there are multiple options available to developers and picking the right option can not only save you time and a rejection, but also ensure your app is getting distributed the most optimal way available. If you enjoy my articles, please give my page a follow. Happy developing!