iPhone - Having a permanent provisionning profiles for my own apps on my own iPhone : any profile expires after a year

StackOverflow https://stackoverflow.com/questions/7356225

Question

When developing an app, I used to test it with a Development provisionning profile. But, this provisionning profile, as well as the distribution one, have an expiration date. Does it mean that :

  • any app I buy on the appstore may stop working if the developper does not renew its subscription to the Apple dev program, so he can't renew the provisionning profile ?

  • My own apps that I install on my won iPhone may stop working after a year if I don't renew that program ?

If yes, is there a way to make my own apps work "forever" on my iPhone even if I don't renew the Apple dev program ?

Was it helpful?

Solution

Any app purchased on the app store does not function off of a provisioning profile (the word "provisioning" should be the clue here).

A provisioning profile is necessary for any app installed using the binary that by pass the app store. For example, when loading an app onto your device for testing or sending out an app to beta testers, the app runs using a provisioning profile.

The reason that a profile expires within a year is because your license to develop expires annually unless renewed. Apple wants to ensure that you don't keep using your own apps on your own device unless you shell over their $99. So as long as you're conforming to Apple's rules, any profile will expire on or before the expiry date for your developer's license.

OTHER TIPS

App that users buy on App Store will continue working even if the developer of that app doesn't renew his subscription.

From http://developer.apple.com/library/ios/#featuredarticles/FA_Wireless_Enterprise_App_Distribution/Introduction/Introduction.html

The first time an application is opened on a device, the distribution certificate is validated by contacting Apple’s OCSP server. Unless the certificate has been revoked, the app is allowed to run. Inability to contact or get a response from the OCSP server is not interpreted as a revocation. To verify the status, the device must be able to reach ocsp.apple.com. See “Network Configuration Requirements.” The OCSP response is cached on the device for the period of time specified by the OCSP server—currently between 3 and 7 days. The validity of the certificate will not be checked again until the device has restarted and the cached response has expired. If a revocation is received at that time, the app will be prevented from running. Revoking a distribution certificate will invalidate all of the applications you have distributed. An app will not run if the distribution certificate has expired. Currently, distribution certificates are valid for one year. A few weeks before your certificate expires, request a new distribution certificate from the iOS Dev Center, use it to create new distribution provisioning profiles, and then recompile and distribute the updated apps to your users. See “Providing Updated Apps.”

So your apps that have been installed on your phone or beta testers phone, would stop working when the certificate expires.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top