我们有3个企业iOS应用程序通过MDM(Symantec App Center)分发。这些应用程序在应用程序中心内配置了安全策略,这意味着他们在分发应用程序之前使用包装程序库重新打包应用程序。在iOS 8发布之前,这一直很有效。当您尝试在iOS 8上运行应用程序时,它们会立即崩溃。如果我将应用程序直接部署到MDM工具之外的同一台iPad上,它们运行良好。
日志显示
Dyld错误消息: 未加载库:@ executable_path / nukonize.dylib
(Nukona是Symantec App Center的原始名称,该库是他们的app包装器。)
注意事项: - 尝试与其他MDM(AirWatch),我看到同样的问题。 - 供应商使用其企业分发证书重新分配应用程序,但他们没有看到问题。 - 我使用我的个人开发者分发证书签署应用程序我们没有看到问题。 - 我们将MDM解决方案之外的应用程序部署到同一台iPad,我们没有看到问题。 - 我们通过MDM部署到iOS 6.x或7.x iPad,我们没有看到问题。
为了排除代码问题,我构建了一个Hello World应用程序,除了在屏幕上显示Hello World之外什么都不做。通过MDM部署它,它也有同样的问题。
一切都表明我们的发行证书/帐户存在问题,但我不能为我的生活考虑可能是什么。任何有助于解决此问题的建议都将非常感激。
答案 0 :(得分:1)
该应用程序将安装正常。只有当它发布时才会出现问题。启动屏幕显示非常短暂,然后应用程序崩溃。
与AirWatch合作,我们发现了该问题的解决方案。我们的签名证书是在iOS 8发布之前创建的,并且缺少在iOS 8之后创建的证书上存在的OU元素。显然,这是在包装过程中使用的。
我们必须创建一个新的分发证书并使用它签署应用程序。一旦我们正确安装了应用程序。
因此,如果您遇到类似问题,请检查您的分发证书以查看其上是否有OU。如果没有,你将不得不创建一个新的。