Provision iOS App for Enterprise Distribution

Here shows how to install an app iOS device from browser, without putting it on the App Store, without installing it via iTunes and without using the MDM approach. You just enter an URL in browser on the iOS device, click a link on the site and an app automagically installs on your device. Or you send SMS message with URL to user's iPhone. User just clicks the link and install the app.

Before you get started with enterprise provisioning, you need the following:

  • You have to be (admin or agent) team member of the iOS Developer Enterprise Program which costs $299 a year.
  • You need a valid SSL certificate for the domain where you want to put the app. Otherwise your iOS device will not install the app from the site.

In this post, we will create the following:

For the enterprise provisioning, you need a distribution certificate which is different from the development certificate! It is for sign-in your code. Go to www.developer.apple.com sign in. Navigate to "Certificates, identifiers & Profiles" by clicking Certificates , identifiers & Profiles under iOS Developer Program. Then click Certificates and Production.



In the image above, the certificates have been created. It is important that you have created the certificate with your certificate signing request file. You should see distribution certificate and private key in the Keychain Access application.



If you don't have above certificate, click plus button in the upper-right. You see this image:



Push the radio button for "In-House and Ad Hoc" (it should be enable if you haven't had the certificate).
In the next screen, you see this:



Following the instructions above create Certificate Signing Request (CSR). After you create CSR, click Continue button and see this screen:



Click "Choose File..." button and choose your CSR file on your Mac. Then click "Generate" button.



Download it and double-click it to install in the Keychain.
Before you create provisioning profile, you need make an App ID. Click "App IDs" on the left handside and click the plus button on the upper-right. You see this screen.



We fill the "App ID" name and push "Explicit App ID" radio button and give "Bundle ID". Click "Continue" button and follow instructions to create App ID.
Now, we create provisioning profile by clicking "Distribution" under Provisioning Profiles on left hand side and clicking the plus button on the upper-right. You see this:



In the above image, we choose "In House" and click "Continue" button. Next, choose the App ID that you have created for your app:



Click "Continue" and select the correct distribution certificate:



Click "Continue". Finally, name your provisioning profile and click "Generate".

Click "Download" the generated profile and double click it to install it:



An IPA file and a manifest plist file that we can deploy directly from the web on an iOS device. This is usually for company/business firm. The iOS app doesn't need to go though Apple Approval procedure and App Store that usually takes one or few weeks.

Open XCode to create the IPA file. Here I use XCode 5.1.1 version. Click the project name on the upper-left. Select the project name in the targets in the center area. Select "General" tab on the top. In the Bundle Identifier field, put your App ID's bundle ID which you created in Provisioning Profile above. In "Team", choose the name of the team of the iOS Developer Enterprise Program.



Click on the project name under "PROJECT" (or under "TARGETS") in the center area. Click "Build Settings" tab on the top. In "Code Signing" select your distribution certificate in Release field of Code Signing Identity. And in Release field of Provisioning Profile, select the provisioning profile which you have created.



For distribution, we create an archive of the app. To do that we need to choose the iOS device (iPhone/iPad) if any device connected. You should see the device on the upper-left; otherwise, it shows "iOS Device" (You cannot make release version / archive if you select iOS Simulator).



To generate archive, click "Product" under XCode menu and choose "Archive". XCode shows the archive in the Organizer:



Click on "Distribute...", and choose "Save for Enterprise of Ad Hoc Deployment". Then choose the provisioining profile that you have created in the drop-down menu in the next step.

In the screen below, tick "Save for Enterprise Distribution". Some text fields will appear that allow you to enter information that will be included into an app manifest that will be created in parallel to the actual IPA file. The manifest is a plist file that you can edit with a text editor.



Remember we need to use https (SSL) in the Application URL field. URL is the address of the IPA file where it will be accessible on the Internet.

Now we got two files: IPA and manifest plist. Upload them to web server to the folder that you specified in the manifest. Now create an html file which is for iOS device installation.

In the html file, you have to include this html tag:
<a href="itms-services://?action=download-manifest&url=https://WebsiteAddress/iOSAppName.plist">iOS App name</a>

In my case, I send SMS text message with the URL to users' iPhone because the app requires cell phone's number to register for security. Here I use email to send SMS to user's Verizon cell phone:



After you create all above, open the URL to download and install the app on the iOS device (see below).



Facebook © 2017 Elaw Dream - Chiling Law. All rights reserved.

Visitors: voicexml