代码之家  ›  专栏  ›  技术社区  ›  basdp

使用企业iOS应用超过12个月,而不使用新的配置文件重新安装

  •  2
  • basdp  · 技术社区  · 7 年前

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

    提前感谢,

    制动辅助系统

    2 回复  |  直到 7 年前
        1
  •  3
  •   wottle    7 年前

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

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

    如果证书过期,您实际上需要使用新证书重新构建应用程序。使用过期证书签名的旧版本将不会运行,除非。从技术上讲,您可以放弃旧的IPA,但需要注意的是,实际的二进制文件是无效的,并且在生成具有适当代码签名的新二进制文件之前无法工作。幸运的是,这仅仅是每3年一次,所以不太频繁,但我几乎可以向你保证,如果你不计划,当它发生时,你的手会一团糟。同样,与配置配置文件一样,您可以通过使用MDM将新内容推送到设备来处理这一问题。在这种情况下,您将使用MDM实际替换while应用程序,而不仅仅是配置文件。还有一点工作,但这是可以做到的。

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

        2
  •  0
  •   Doug wcochran    7 年前

    用户安装MDM配置文件并接受提示以允许MDM服务器安装应用程序。

    MDM服务器能够根据MDM配置文件中设置的权限管理设备。然后,可以任意安装和删除MDM服务器管理的应用程序。

    iOS MDM Server 应该让你朝着正确的方向前进。上一次(大约一年前)我研究这个问题时,各种付费选项的定价大约是15美元/台/年。但也有一到两个合理的开源MDM服务器可用。