Provisioning and distributing iOS app in-house using enterprise program is quite complicate and most of the times gets overwhelmed. Recently I published an app in-house for enterprise account successfully after facing initial challenges and going thru lot of Stackoverflow Q&A. Preparing this tutorial for future reference and for anyone who want to use it for their own enterprise in-house app distribution setup.
Enterprise iOS app can be distributed using MDM service also but also comes with additional cost. Below approach is without MDM service and can be hosted on cloud storage hosting services like Google Could storage.
- Apple Developer Enterprise Program account — It’s $299 per year
- Native iOS App
- Self host secure (https) server — Alternatively, you can have Google Drive, Dropbox, Google cloud storage or similar storage services account
Process to distribute enterprise iOS app in-house:
Create iOS Distribution Certificate: This needs to be done using your Apple Developer Enterprise account as below and follow on screen steps.
Create App ID: Created App ID will be used in next step.
Create iOS Provisioning profile: Select In House as distribution method and during next step select the App ID created in previous step. In the last step download the provisioning profile and double click it to implement it.
Select manually Signing certificate: By default, Signing is selected as “Automatically manage signing”, uncheck the box and select provisioning profile created in earlier step and select Enterprise account Team. Signing certificate will show your certificate created in step # 1. Follow same for debug and release.
Select Code Signing Identity under Build Setting as iPhone Distribution for enterprise account
Create Archive (Product -> Archive)
Once Archive is created, select Export option and select Enterprise as method of distribution
Follow onscreen instruction and Select newly created distribution certificate and profile
Provide location of URL where app IPA, Manifest file and display images will be stored. Remember it needs to be https address.
Once you follow on screen instruction, it creates the App folder which you can store on your mac. Upload the .ipa & .plist file to https server mentioned above.
Upload the 57 X 57 and 512 X 512 images to the server as mentioned above.
Metadata (MIME) for .ipa needs to be application/octet-stream and .plist needs to be text/html
Create html file with below content and upload same location as like your .ipa, etc. It can be at any other https location also.
Install iOS in-house App</a>
Make sure your .ipa, .plist, images and html can be accessed by your desired audience.
You can share the html link to your users and they would be able to download the app by clicking “Install iOS in-house App” on your html.
After downloading the app, users needs to Trust the certificate under Settings → General → Device Management → <Enterprise Name> then only they would be able to open the app.
Feel free to comment below for any questions.