OStack程序员社区-中国程序员成长平台

标题: ios - 使用企业 iOS 应用程序超过 12 个月而无需重新安装新的 Provisioning Profile [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 13:37
标题: ios - 使用企业 iOS 应用程序超过 12 个月而无需重新安装新的 Provisioning Profile

我们正在使用 Apple 的企业开发者帐户构建 iOS 应用程序,以便在我们自己的内部 App Store 中分发。对于构建,我们需要生成一个配置文件,该配置文件在创建后 12 个月到期。过期后,应用无法在设备上运行(由于 Provisioning Profile 过期而立即崩溃),每个设备都需要重新安装应用的新版本。

我们如何为用户提供一个用户友好的工作流程,让他们不必在 12 个月后处理崩溃的应用程序?

提前致谢,

基础



Best Answer-推荐答案


配置文件的到期是企业分布式应用程序的一个麻烦。这需要您的内部开发团队、移动支持团队进行持续维护。

首先,我想指出您没有提到证书。因为它们现在每 3 年到期一次(在撰写本文时 - 最初它们每年都到期),开发人员经常忘记它们。但是,它们的过期实际上比配置文件更麻烦。当配置文件过期时,您只需在设备上获取另一个有效配置文件。这可以通过多种方式完成。您可以使用移动设备管理 (MDM) 解决方案来推送新的配置文件。或者,如果最近将另一个具有有效配置文件(使用通配符 ID)的应用程序推送到设备,这也可以获得设备上的有效配置文件。

如果证书过期,您实际上需要使用新证书重新构建应用程序。使用过期证书签名的旧版本将不会运行,除非。从技术上讲,您可以退出旧的 IPA,但需要注意的主要是实际的二进制文件是无效的,并且在生成具有正确代码签名的新二进制文件之前将无法工作。幸运的是,这只是每 3 年一次,因此频率较低,但我几乎可以向您保证,如果您不为此做好准备,您的手会一团糟。同样,与配置文件一样,您可以通过使用 MDM 将新内容推送到设备来处理此问题。在这种情况下,您将使用 MDM 来实际替换 while 应用程序,而不仅仅是配置文件。多做一点工作,但可以做到。

当然,您可能有不想使用 MDM 的原因。成本可能是一个问题。员工可能不希望公司管理他们的个人设备(如果这些应用程序在个人设备上运行)。能够管理 MDM 基础架构/工作负载。如果 MDM 对您的组织来说不是一个很好的解决方案,我会推荐另一种从用户体验来看并不理想但可以解决您的问题的方法。您可以构建您的应用程序以进行 self 更新。换句话说,在启动时,您的应用程序会检查服务器以查看是否有新版本可用。如果是这样,它会提示用户更新。这不需要管理设备,您可以轻松构建共享框架,让应用程序开发人员轻松实现这一点。这种方法的一个缺点是,如果用户在您发布新版本(使用新的配置文件/证书)和配置文件或证书过期之间没有启动应用程序,则应用程序将不会启动,因此自动更新功能无法运行来告诉用户获取新版本。它只会在用户看来就像应用程序正在崩溃一样。这是这种方法的一个用户体验问题。但如果你能做到这一点,它可以提供 MDM 路线的替代方案。

关于ios - 使用企业 iOS 应用程序超过 12 个月而无需重新安装新的 Provisioning Profile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45676696/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4