苹果开发证书分为个人证书和企业证书。两者其中一个区别是,企业证书打包的app不需要发布到app store,而个人证书的app必须发布到app sotre。但是企业证书有个弊端,使用企业证书发布app有效期为12个月,假如过了有效期app则无法运行。也就是说,企业证书发布的app至少需要 1年升级一次,每次升级使用新的证书来发布。
这真是一个大坑。
下面是苹果官方文档的说明(http://help.apple.com/iosdeployment-apps/mac/1.1/?lang=zh-cn#app43ad802c):
您自己分发的应用程序不会自动更新。当您有新版本可供用户安装时,向他们发送更新通知并指导他们安装应用程序。考虑让应用程序检查更新,并在它打开时通知用户。如果您使用的是无线应用程序分发,则通知可以提供已更新应用程序的清单文件链接。
如果您想要用户保留他们的设备上储存的应用程序数据,请确定新版本使用的 bundle-identifier 与它要替换的 bundle-identifier 相同,并告知用户在安装新版本之前不要删除他们的旧版本。新版本将会替换旧版本并保留设备上储存的数据,前提是 bundle-identifier 匹配。
分发预置描述文件自签发之日起 12 个月后过期。过期之前的两个月,iOS 设备会开始显示即将过期通知。过期之后,应用程序将无法开启。
请在预置描述文件过期之前,使用 iOS Development Portal(iOS 开发门户)为应用程序创建新描述文件。使用新预置描述文件为首次安装应用程序的用户创建新应用程序归档 (.ipa)。
对于已经拥有该应用程序的用户,您可能想要计划发布下一个版本的时间,以便它包括新预置描述文件。如果您不想这样做,则可以仅分发新 .mobileprovision 文件,以便用户不必再次安装该应用程序。新预置描述文件将覆盖已存在于应用程序归档中的描述文件。
现在,您可以使用 MDM 安装和管理预置描述文件,用户可以从您提供的安全网站上下载和安装它,或者您可以将它作为电子邮件附件分发给用户,供用户打开和安装。
您的分发证书过期后,应用程序将无法开启。分发证书自签发之日起三年有效,或者在您的 Enterprise Developer Program(企业级开发者计划)成员资格过期之前一直有效,过期日期以先到者为准。若要防止证书提前到期,请确保在成员资格过期之前续订它。有关如何 检查分发证书的信息,请参阅证书验证。
您可以同时让两个证书处于活跃状态,它们之间相互独立。第二个证书是为了提供一个重叠期,让您能够在第一个证书过期前更新您的应用程序。从 iOS Dev Center(iOS 开发中心)请求您的第二个分发证书时,请确保您没有撤销第一个证书。