应用程序在运行存档的导出.ipa时崩溃但在模拟器上工作并将应用程序加载到设备上

时间:2015-08-29 13:15:44

标签: ios xcode iphone-6-plus crash xcode7-beta6

我目前正在使用Xcode 7 Beta 6,当我使用开发人员证书直接部署时,该应用程序可在模拟器和设备上运行。但是,当我尝试使用存档功能创建IPA文件时,该应用程序无法从设备启动。它正在崩溃并抱怨未加载自定义框架/找不到合适的图像。以下是崩溃日志的截图[删除了一些不必要的信息]:

  

enter image description here

我尝试使用企业证书和开发人员证书进行归档,并且都提出了同样的问题。有人可以帮忙吗?我尝试了几个来自在线论坛的建议解决方案,但它们对我不起作用:

  • 将自定义框架添加到嵌入式二进制文件和链接二进制文件中 与图书馆
  • 构建阶段还将框架复制到 框架文件夹
  • 检查框架搜索路径
  • 试过 安装在iPhone 5而不是iPhone 6+和同样的问题 发生
  • 在命令行上检查框架的体系结构
  • 框架也包含在IPA
  • 尝试创造一个简单的 Hello World应用程序并成功生成了IPA。该应用程序启动 在具有企业档案的设备上,所以这告诉我了 证书正在运作。

另外需要注意的是,当我在管理器工具上导出存档时,没有与自定义框架关联的权利。我不确定我们是否应该有。以下是没有图书馆权利的类似问题的屏幕截图:https://drive.google.com/file/d/0B68-3G8aSUUHdjZWdjJrcHZEVEU/view

一般情况下,当我通过开发人员的证书加载应用程序时,它正在工作,所以我不知道为什么存档可能会有不同的行为。

我尝试但可行的类似问题的其他解决方案。

1 个答案:

答案 0 :(得分:0)

我找到了问题的解决方案!希望这可以帮助任何面临同样问题的人。要解决此问题,您需要使用代码签名证书对您的应用进行签名,并将主题组织单位(OU)设置为您的团队ID。 Apple已对其证书进行了更改,因此我们需要重新创建用于签署应用程序的新证书。

修复证书问题的步骤如下:

  1. 撤销分发/开发者证书
  2. 创建新的分发/开发者证书
  3. 使用新创建的证书更新相应的配置文件
  4. 使用新证书再次归档您的应用
  5. 最后但同样重要的是,应用程序架构应该已经包含嵌入式框架(如果有),因此除了指定正确的软件包ID,团队名称和代码签名标识之外,不需要进行任何其他更改。

    本Q& A中提供的解决方案帮助我实现了这个解决方案: Apple's Technical Q&A