Search code examples
iosxcode6provisioning-profileenterprise

Enterprise distribution profile expired. What to do?


I have developed and published an Enterprise iOS app, a year ago.

Now the provisioning profile expired.

The client owns the Enterprise account and passed me a .p12 certificate, a .mobileprovision file, and a ios_distribution.cer file.

What do I have to do to re-enable the app?

I also have my old .plist and old .ipa files, that are now useless because of the expired provisioning profile.

Any hints?

I tried installing the .p12 distribution certificate in my keychain, and re-signing the .ipa with ReSignMe.

I also tried unzipping the ipa, replacing the embedded.mobileprovision with the new one, and resign. No luck.

I also tried re-archiving and exporting the app, but now Xcode 6.1 doesn't have Export for Enterprise Deployment, because it wants me to have a Enterprise account.

Please help me. Please!


Solution

  • You should be able to re-sign the ipa. That's what we do every time our enterprise profile expires - we even have a script that downloads all the signed ipas from our server, re-signes them, and re-uploads them to the server. When you tried ReSignMe, what error(s) are you getting? Also, make sure you are resigning with the new, valid enterprise provisioning profiles.

    After re-signing, right click on the .ipa file and show contents. Go to Payload/embedded.mobileprovision and open that file in a text editor. Inside, you will find the expiration date. Make sure that date is in the future, or you are simply re-signing the ipa with an expired provisioning profile.

    If you are still seeing errors after attempting to re-sign, post the console error here and it will make troubleshooting much easier.

    Better yet, once you get re-signing working, provide the client with the instructions on how to re-sign the app and have them do it. If they have access to the developer site, and have kept their account active, they can download the new provisioning profile, and then run the script in the following answer to re-sign with the new provisioning profile. https://stackoverflow.com/a/25656455/3708242