Quick Way in Deploying IOS Enterprise App

One of the most repetitive task, every enterprise IOS developer has to do – is to setup a portal/website, link up the plist and then the ipa. Retest the link and make sure everything is ok. Rinse and repeat for the next major build etc.

In IOS 7.0+, Apple quietly introduced another security feature which only enables enterprise signed ipa to be installed to devices only if it’s hosted in a secure SSL website. Seriously what a facepalmer!

Like everyone else, I was one of those developers that got stucked into this particular situation, trying to figure out why my ipa suddenly refuse to install after IOS 7.0 upgrade (let aside all the cursing and swearing lol).

aot8i

After comparing and googling the error message I got from console, I noticed that in IOS 7.0 Apple specifically requires all Enterprise Plist files to be hosted in a SSL site, due to some security reason. I can understand that, all final distribution is good to have it in proper and valid SSL cert, but what about beta release stages and testing? Once again picture above says it all. LOL

What is the fastest and the cheapest possible way of doing this, you say? Well, you’ve come to the right place.

Quick Solution – Dropbox Plist!

dropbox_logo1

Yeah, like what the header title above. We place our plist file. Into dropbox. A social file sharing cloud service hosted in a secure SSL site – how convenient. However, it’s not as easy as drop the plist into the dropbox account and expect everything to work. Now moving on to Preparation!


Preparation Needed

Firstly, Apple only requires plist file to be hosted in a SSL site. Suffice to say, only your plist is required to be on dropbox. You can keep the html file and the ipa stored in your portal or your website. However, doing so means you will need to edit your html file to point to your dropbox’s “direct link”.


Step 1 : Edit your plist to point to your server’s IPA file

Just make a quick edit to the plist to point to where your IPA is hosted. Normally is uploaded to your website / portal folder.


Step 2 : Upload plist some dropbox account

I normally have a special account created on behalf of my company to host these files. Login and upload the file. (Note that, this tutorial is written and done on http://www.dropbox.com as in the website not the app.


Step 3 : Obtain the share link

Once is uploaded, right click on the file, select Share link to get the share link

Share Link .. Dropbox

Select – Share link…

You will arrive into a special url that looked like this. https://www.dropbox.com/s/{someuniquecode}/filename.plist ;This is your share link. A popup box will appear, indicating to share to social media or email etc. Just click X to cancel. Now, you will now need to copy the url above.

Sample share url

Sample share url



Step 4 : Convert the share link into direct link

A share link is a special website designed for other users to download the file. Note : This is NOT a direct link. A direct link is the url that links to the exact location of file itself – not a page where you can click download.

All you need to do, is open up notepad or some text editor, paste the url share link you just copied in Step 3.

Replace the https://www.dropbox.com to https://dl.dropboxusercontent.com. Take note, remaining your share link url under /s/{someuniquecode}/filename.plist remained unchanged. This new url will become your direct link. You may paste into some browser to test it. A file download of the ipa will initiate or the browser may directly open the ipa as a text file.

Note : If you think all this is too troublesome, I have prepared a tiny converter tool here to do the conversion for you.


Step 5 : Edit your html link or portal’s itms link

Next all you need to do now, is to edit your html. Just look for anchor link url, replace it the direct link obtained in Step 4 itms-services://?action=download-manifest&url={paste your direct link here}

To sum up, here is how the link should work

Portal / html itms link –> Direct Link to PLIST in dropbox –> Plist link to get IPA


Quirks in Dropbox

Occasionally, you might experience some lame dropbox error like Unable to connect/install from dl.dropboxcontent.com; even though you are pretty sure you have a strong Internet Connection. Such anomaly is known as Plist file corruption

PREVENTION, always make sure both your plist and ipa filename remain as short as possible, no spaces, no latin weird characters, no foreign language and etc. Keep it short, in English and sweet.

Sometimes, it might due to the plist being edited by wrongly by unsupported editor thus might introduced some invisible characters to the plist structure. What I normally do, is to do a test on a working sample plist. Then, just keep using that plist as basis to edit for other app.

Well that’s it for today folks. Hope this helps 😉


Comments

comments