I do some iOS development (both personally and for work). It’s great. But. It’s also very painful at times.
One reason it is painful is the provisioning profiles & certificates setup. I dread the next time my provisioning profiles or worse, certificates expire. It’s just annoying. And always involves way too much clicking and anxious holding of my breath when I click the magical “build” button.. just waiting for those terribly unhelpful codesign errors.
Certificates expire every 12 months.
Development provisioning profile expire every 3 months.
Push notifications certificate expire every 12 months.
Anyway, I experienced a terrible gotcha today. I had to shake my head in wonderment. I was helping a colleague do a distribution build for a new app for work. As I am team agent (i.e. super admin) for our work’s iOS Dev Portal I was assisting in setting up their macbook with the distribution certificates, creating app ID’s and all sort of other annoying stuff.
The gotcha came as I was creating the distribution provisioning profile. My process was:
- Login to iOS Provisioning Portal as Team Admin
- Create Distribution Provisioning Profile
- Download to my mac
- Email to colleague
- Have him double click it to install into his XCode
Sounds simple right?
Well, the last step refused to work. No matter what. We tried everything we could think of. Extensive googling and an all around waste of 20 minutes of our frustrating afternoon.
So for giggles, I asked him to let me login to the iOS Provisioning Profle on his macbook. Thinking I was asking to do something which was a complete waste of time.
So I logged in, downloaded the provisioning profile & double-clicked to install. Voila. It worked. I couldn’t believe my eyes.
It was the SAME user logging in. Downloading the SAME provisioning profile.
The moral of the story for anyone experiencing a similar issue and who googles “provisioning profile won’t install”: DONT EMAIL PROVISIONING PROFILES. They obviously dont like to be emailed.
* Compressing the provisioning profile prior to emailing may have worked. But I didn’t want to waste any more time on the ridiculous process, so I didn’t try. I was emailed through exchange, but exchange didn’t complain about the file type or anything like that.
More iOS related posts to come. Both positive (i.e. making money!!) and probably more gotcha’s.