- How to distribute iOS app out of the store with iOS Enterprise Program ?
- Who is the Apple Developer Enterprise Program for?
- How does it work from the administrator’s point of view?
- Do you want to manage your app’s distribution yourself?
- How does it work for the final user?
- Extra info
- [FAQ] In-House Apps, Ad Hoc Distribution – распространение приложений в обход App Store
- In-House Distribution for Xamarin.iOS Apps
- Testing your Application
- Getting Set Up for Distribution
- Creating a Distribution Certificate
- Creating a Distribution Provisioning Profile
- Creating an App ID
- Distributing your App In-House
- Creating an IPA for In-House Deployment
How to distribute iOS app out of the store with iOS Enterprise Program ?
Written by Jerome Granados on Thursday 29 April 2021
When it’s time to create your beautiful iOS app , publishing it on the App Store may seem like an inevitable part of the process.
However, if your goal isn’t for it to be publicly available for everyone, but just for internal users, distributing it outside of the Store could be a good alternative.
You have two options :
Custom apps distribution.Custom appsmay be distributed using Apple Business Manager, School Manager, or redemption codes via the public App Store. You can find out more about custom apps in this article .
This article covers alternatives to the Apple Developer Program for enterprises.
With this method, your binary (.ipa file) will be hosted on a server, and you’ll give a URL to the users of your choice which gives them access in https.
Who is the Apple Developer Enterprise Program for?
The Apple Developer Enterprise Program is intended for companies wishing to distribute apps to its employees within.
The Apple Developer Enterprise Program allows you to distribute your app internally, outside of the App Store, and costs $299 per year.
No matter how you plan to distribute the iOS version of your app internally, you must first subscribe to this service, which is mandatory for creating the certificates.
How does it work from the administrator’s point of view?
The steps shown in the Apple Developer Account interface are slightly different from those indicated in the GoodBarber back office, but the principal is the same:
1) You will use an «In House» distribution certificate to sign your app.
2) You will give your app an app ID
3) You will link a push certificate to this app ID
4) You will associate «In house» and ad-hoc provisioning profiles with your app ID.
One your application is generated, you’ll be able to manage its distribution yourself.
There are services available online to help you manage the distribution of an app created with an enterprise developer account, which allow you to create an internal store.
We have a good relationship with the founders of Appaloosa, one of the leading companies in this domain, and if you’re interested in using their product, GoodBarber can offer you exclusive advantages. Contact the support team for more details.
It is possible to distribute your app yourself. It’s a bit technical, but nothing impossible. If you’re up for the challenge, read on.
Do you want to manage your app’s distribution yourself?
To distribute your app yourself, you’ll have to do 3 things :
1) Host the app’s binary (the .ipa file) on a server.
The .ipa file can be downloaded from your backend : Publish > Submission > iOS.
Attention : The .ipa file must be served by your server via https, otherwise it won’t be possible to install your app on your users’ devices.
2) Create a manifest associated with this binary file.
A manifest is a file that contains metadata related to the other files it describes. For example, in our case, the manifest will indicate the URL of your app’s .ipa file, the bundle ID, and the name of the app.
You must manually build this file (see the example below). You can create the manifest in any text editor. When saving it, give it the .plist extension.
Don’t forget to replace the following elements in brackets :
[Https link to the IPA file] : Your .ipa file’s URL after it’s been hosted on a secure server
[Bundle ID] : Your app’s ID available on this page : Publish > Certificates > iOS
[App name] : The name of your app
3) Create a web page with a link to the manifest
After you’ve left the .plist file on a secure server, you can then create a web page where you’ll put a link to download your app, like in the example below :
Don’t forget to replace » URL_OF_THE_PLIST_FILE » with your .plist file’s URL.
You can also replace the text «Download our application» with another personalized message.
How does it work for the final user?
You’ve generated a download page and communicated it to your finals users via an internal site or by email.
They can then click the link inside to download your application.
The first time users click on this link, a pop-up will be displayed on their screen to confirm that they want to download the application.
Then, the first time it’s launched, a new pop-up will appear.
iOS will ask them if they trust the distributor of the app, which in this case is you.
To confirm this and in order for the app to be usable, they will have to go to the menu Settings > General > Profiles and Device Management in their iOS device.
Your users will then have the pleasure of exploring and using your beautiful app!
Extra info
Your «In House» distribution certificate expires after 3 years.
Once it has expired, it will no longer be possible for your final users to download the application.
You will have to renew it.
You can create up to 3 «In House» distribution certificates per Enterprise Account, and you can use the same certificate for the distribution of multiple applications.
Источник
[FAQ] In-House Apps, Ad Hoc Distribution – распространение приложений в обход App Store
Если вы хотите увидеть на нашем сайте ответы на интересующие вас вопросы обо всём, что связано с техникой, программами и сервисами Apple, iOS или Mac OS X, iTunes Store или App Store, пишите нам через форму обратной связи.
К нам поступил следующий вопрос:
Добрый день, уважаемая редакция! К вам есть вопрос насчёт возможных способов распространения приложений не через App Store. Допустим, есть программа, которую цензоры точно не пропустят, но я хочу распространять её сам. Какие у меня есть альтернативы? Я много чего прочитал про Ad Hoc и In-House, но особой ясности это не прибавило. Когда подходит каждый из этих способов? И что такое Custom B2B Apps? Это какой-то третий способ распространения или разновидность In-House Apps?
Вы правы, существует два способа распространения iOS-приложений не через App Store, которые официально поддерживаются Apple – In-House Apps и Ad Hoc Distribution. Различий между ними много:
- Ad Hoc Distribution – механизм распространения приложений для бета-тестирования (либо для небольших компаний). Разработчик приобретает стандартную подписку iOS Developer Program (за 99 долларов в год) и получает право прикрепить к своему аккаунту 100 iOS-устройств. Затем он компилирует IPA-файл программы, подписывает её своим собственным сертификатом и создаёт к ней профайл – небольшой файлик, содержащий информацию о том, какая именно программа и на какие устройства может быть установлена. Бета-тестеры или конечные пользователи должны будут поставить профайл, после чего смогут установить через iTunes или со специальным образом организованной веб-страницы подписанную разработчиком программу. Если профайла нет, если в нём не указано нужное устройство, если профайл не соответствует сертификату разработчику – ничего не получится. Распространение софта посредством Ad Hoc весьма удобно, но есть существенное ограничение – максимум 100 целевых устройств. Для коммерческого продукта это не аудитория.
- In-House Apps – особый вид внутренних приложений, которые создаются компаниями для своих работников. От имени компании приобретается подписка Developer Enterprise Program (уже за 299 долларов в год), к которой прилагается другой тип сертификата разработчика. От iOS Developer Program он отличается тем, что количество совместимых устройств никак не ограничивается. Напротив, раньше Apple требовала, чтобы In-House Apps ставились минимум на 500 гаджетов, но пару лет назад и это ограничение сняли. Ещё интереснее другое – приложение, подписанное сертификатом Developer Enterprise Program, ставится на любые устройства! Никакие регистрации UDID не требуются, никаких дополнительных проверок нет. Но не всё так прекрасно. Во-первых, зарегистрироваться в Developer Enterprise Program могут только компании, имеющие номер D-U-N-S (а ещё Apple оставляет за собой право запросить у вас нотариально заверенные апостилированные копии учредительных документов). Во-вторых, соглашение с Apple требует, чтобы: а) распространяемый софт был бесплатным; б) он распространялся только среди работников компании. Конечно, Apple не уследит за всеми, однако стоит помнить об этих ограничениях – если вдруг на вас обратят внимание (либо кто-то из доброжелателей накатает донос), ваш сертификат будет аннулирован без права восстановления.
Подчеркнём: при использовании данных способов ваше приложение не проходит через цензоров App Store, поэтому вы вольны распространять абсолютно любой софт. Про HIG и Review Guidelines можно забыть. Этим-то In-House Apps и Ad Hoc Distribution отличаются от упомянутых вами Custom B2B Apps. B2B Apps – приложения для закрытого от посторонних глаз раздела App Store для корпоративных пользователей, где действуют особые условия покупки (например, оптовые контракты). Такие приложения тоже подвергаются цензуре, поэтому данный вариант вряд ли будет вам интересен.
Источник
In-House Distribution for Xamarin.iOS Apps
This document gives a brief overview of distribution of applications In-House, as a member of the Apple Enterprise Developer Program.
Once your Xamarin.iOS app has been developed, the next step in the software development lifecycle is to distribute your app to users. Proprietary apps can be distributed In-House (previously called Enterprise) through the Apple Developer Enterprise Program, which offers the following benefits:
- Your application does not need to be submitted for review by Apple.
- There are no limits to the amount of devices onto which you can deploy an application
- It is important to note that Apple makes it very clear that In-House applications are for internal use only.
It is also important to note that the Enterprise Program:
- Does not provide access to iTunes Connect for distribution or testing (including TestFlight).
- The cost of membership is $299 per year.
All apps still need to be signed by Apple.
Testing your Application
Testing your application is carried out by using Ad Hoc distribution. For more information about testing, follow the steps in the Ad-Hoc Distribution guide. Be aware that you can only test on up to a maximum of 100 devices.
Getting Set Up for Distribution
As with other Apple Developer Programs, under the Apple Developer Enterprise Program, only Team Admins and Agents can create Distribution Certificates and Provisioning Profiles.
Apple Developer Enterprise Program certificates will last for three years, and provisioning profiles will expire after one year.
It is important to note that expired certificates cannot be renewed, and instead, you will have to replace the expired certificate with a new one, as detailed below.
Creating a Distribution Certificate
Browse to the Certificates, Identifiers & Profiles section of the Apple Developer Member Center.
Under Certificates, select Production.
Click the + button to create a new Certificate.
Under the Production heading, select In-House and Ad Hoc:
Click Continue, and follow the instructions to create a Certificate Signing Request via Keychain Access:
Once you have created your CSR as instructed, click Continue, and upload your CSR to the Member Center:
Click Generate to create your certificate.
Download the completed certificate and double-click on the file to install it.
At this point, your certificate should be installed on the machine, but you may need to refresh your profiles, to ensure that they are visible in Xcode.
Alternatively, it is possible to request a Certificate via the Preferences dialog in Xcode. To do this, follow the steps below:
Select your team, and click View Details:
Next, click the Create button next to iOS Distribution Certificate:
Next, click the plus (+) button and select iOS App Store:
Creating a Distribution Provisioning Profile
Creating an App ID
As with any other Provisioning Profile you create, an App ID will be required to identify the App that you will be distributing to the user’s device. If you haven’t already created this, follow the steps below to create one:
- In the Apple Developer Center browse to the Certificate, Identifiers and Profiles section. Select App IDs under Identifiers.
- Click the + button and provide a Name which will identify it in the Portal.
- The App prefix should be already set as your Team ID, and cannot be changed. Select either an Explicit or Wildcard App ID, and enter a Bundle ID in a reverse DNS format like: Explicit: com.[DomainName].[AppName] Wildcard:com.[DomainName].*
- Select any App Services that your app requires.
- Click the Continue button and following the on screen instructions to create the new App ID.
Once you have the required components needed for creating a Distribution Profile, follow the steps below to create it:
Return to the Apple Provisioning Portal and select Provisioning > Distribution:
Click the + button and select the type of Distribution Profile that you want to create as In-House:
Click the Continue button and select App ID from the dropdown list that you want to create a Distribution Profile for:
Click the Continue button and select distribution certificate required to sign the application:
Click the Continue button and enter a Name for the new Distribution Profile:
Click the Generate button to create the new profile and finalize the process.
You may have to quit Visual Studio for Mac and have Xcode refresh it’s list of available Signing Identities and Provisioning Profiles (by following the instructions in Requesting Signing Identities section) before a new Distribution Profile is available in Visual Studio for Mac.
You may have to quit Visual Studio and have Xcode (on the Build Host’s Mac) refresh its list of available Signing Identities and Provisioning Profiles (by following the instructions in the Requesting Signing Identities section) before a new Distribution Profile is available in Visual Studio.
Distributing your App In-House
With the Apple Developer Enterprise Program, the licensee is the person responsible for distributing the application, and for adhering to the guidelines set by Apple.
Your app can be distributed securely using a variety of different means, such as:
- Locally through iTunes
- MDM server
- An internal, secure web server
To distribute your app in any of these ways you must first create an IPA file, as explained in the next section.
Creating an IPA for In-House Deployment
Once provisioned, applications can be packaged into a file known as an IPA. This is a zip file that contains the application, along with additional metadata and icons. The IPA is used to add an application locally into iTunes so that it can be synced directly to a device that is included in the provisioning profile.
For more information on creating an IPA see IPA Support guide.
Источник