我们正在使用Apple的企业开发人员帐户构建iOS应用程序,以便在我们自己的内部App Store中进行分发。对于构建,我们需要生成供应配置文件,该配置文件将在创建后的12个月内到期。到期后,该应用程序无法在设备上运行(由于过期配置文件过期而立即崩溃),并且每个设备都需要重新安装该应用程序的新版本。
我们如何为用户提供用户友好的工作流程,让他们在12个月后无需应对崩溃的应用?
提前致谢,
BAS
答案 0 :(得分:3)
配置配置文件到期是企业分布式应用的麻烦。这需要内部开发团队,移动支持团队的持续维护。
首先,我想指出你没有提到证书。因为它们现在每3年才过期(截至本文撰写时 - 最初它们每年都过期),开发人员经常会忘记它们。但是,它们的到期实际上比配置文件更麻烦。配置文件到期时,您只需在设备上获取另一个有效的配置文件。这可以通过多种方式完成。您可以使用移动设备管理(MDM)解决方案来推送新的配置文件。或者,如果另一个具有有效配置文件(使用通配符ID)的应用程序最近被推送到设备,这也可以在设备上获得有效的配置文件。
如果证书过期,您实际上需要使用新证书重新构建应用程序。使用过期证书签署的旧版本将不会运行,除非。从技术上讲,您可以重新签署旧的IPA,但要注意的是,实际的二进制文件无效,并且在生成具有正确代码签名的新二进制文件之前不会起作用。幸运的是,这只是每3年一次,所以它不那么频繁,但我几乎可以向你承诺,如果你没有为它做好计划,你手上就会弄得一团糟。同样,与配置文件一样,您可以通过使用MDM将新内容推送到设备来处理此问题。在这种情况下,您将使用MDM实际替换while应用程序,而不仅仅是配置文件。还有一点工作,但可以做到。
当然,您可能不想使用MDM。成本可能是一个问题。员工可能不希望公司管理他们的个人设备(如果这些应用程序是在个人设备上)。能够管理MDM基础架构/工作负载。如果MDM对您的组织来说不是一个很好的解决方案,我会建议另一种方法不是用户体验的理想选择,但可以解决您的问题。您可以构建自己的应用程序以进行自我更新。换句话说,在启动时,您的应用会检查服务器以查看是否有新版本可用。如果是,则提示用户更新。这不需要管理设备,您可以轻松构建共享框架,以便为应用程序开发人员提供便利。这种方法的一个缺点是,如果用户在您发布新版本(使用新的配置文件/证书)和配置文件或证书过期的时间之间没有启动应用程序,则应用程序将无法启动,因此自动启动-update功能无法运行以告知用户获取新版本。它只会向用户显示应用程序崩溃。这是这种方法的一个UX问题。但是如果你可以管理它,它可以提供MDM路由的替代方案。
答案 1 :(得分:0)
您可以使用MDM服务器进行管理。本质上,工作流程看起来像这样:
用户安装MDM配置文件并接受提示以允许MDM Server安装应用程序。
MDM Server能够根据MDM配置文件中设置的权限管理设备。然后可以任意安装和删除MDM Server管理的应用程序。
快速谷歌搜索iOS MDM Server
应该让你朝着正确的方向前进。各种付费选项的定价约为15美元/设备/年,上次我调查(大约一年前)。但是也有一两个合理的开源MDM服务器可用。