2014-07-09 98 views
3

我有小应用程序(游戏),它在使用设备开发证书和模拟器进行测试时工作正常。iOS AdHoc应用程序在某些视图中崩溃

但是,当通过AdHoc配置文件安装应用程序时,在特定的视图上,它会崩溃50%的时间。其他意见完美。

如何查看导致应用程序崩溃的原因,因为它不会在Xcode中的AdHoc模式中显示任何日志信息。

谢谢。

+0

我遇到过类似的崩溃事件。我通常首先做的是将我的项目方案中的构建配置更改为AdHoc,然后在设备上运行应用程序。然后您将能够重现崩溃并希望对其进行调试。 –

+0

该应用程序崩溃,如果它使用错误的配置文件安装在设备上。如果我直接使用AdHoc配置文件安装应用程序,它确实已安装,但它立即崩溃。 – user3141985

+3

象征性的崩溃日志(s),你会发现 – kambala

回答

4

你需要得到您的设备,这需要几个步骤symbolicated崩溃日志:

  1. 获取崩溃注销设备。您可以在Xcode的管理器窗口中找到日志。在组织者中,在设备选项卡下,您应该看到各种设备已连接到您的计算机。在部分或全部这些设备下,将出现“设备日志”列表。如果您为任何设备选择设备日志,您将看到该设备的崩溃日志列表。发生在临时分布式应用程序中的崩溃日志通常不会被象征化,因为存档构建通常是使用发布构建配置完成的,而Xcode在新应用程序项目中为您设置的发布配置恰巧从构建的产品中剥离调试符号。

  2. 您在发布ad-hoc之前创建的存档实际上只是一个ZIP文件。从Xcode中,在查找器中显示存档,并将存档文件的扩展名更改为“zip”,以便您可以将其解压缩到查找程序中(或者只需从命令行解压文件即可,无论使用哪种方式,只需要获取存档解压缩)。

  3. 在您现在解包的归档的Payload目录中,您应该找到您的应用程序包。您需要获取该应用程序包,并将其放在构建项目进行归档时生成的dSYM包旁边,Spotlight可以在其​​中找到它们。如果您只是将应用程序和dSYM放在您的主目录中的某个文件夹中,则应该这样做。

  4. 最后,在Xcode组织者的设备日志下,选择需要符号化的崩溃报告,然后单击Xco​​de窗口底部的“重新符号”按钮。

如果不从存档构建的捆绑的dSYM,你可能需要重新构建归档而这一次,在构建日志中查找“生成foo.dSYM”步(应该是“构建成功”之前的最后一步或最后一步)。如果您扩展该步骤的命令,您应该能够看到dSYM的生成位置。将它保存在某个地方,以便稍后使用。然后临时分发并安装新建的归档文件,重现崩溃,并按照上述步骤1-4来表示新的崩溃日志。

当然,有了符号化的崩溃日志,能够真正修复崩溃,但获取符号日志是重要的第一步。符号化的日志会告诉你堆栈在崩溃发生时的样子,并帮助你找出相关的代码。

+0

感谢您如何获取日志和找到原因的详细答案。虽然我能够找到问题,但我在使用这个[http://stackoverflow.com/questions/1451342/objective-c-find-caller-of-method/9603733#9603733]一段代码时,当注释掉,AdHoc版本的应用程序现在完美工作。 – user3141985

相关问题