应用程序在设备上的 Beta 版中崩溃,但未在调试中
Posted
技术标签:
【中文标题】应用程序在设备上的 Beta 版中崩溃,但未在调试中【英文标题】:App crashed in Beta on the device, but not in debug 【发布时间】:2010-01-07 17:57:15 【问题描述】:我创建了一个 Beta ad hoc 交付配置文件,当我在处于 Beta 模式的设备上按“构建并运行”时,我的应用会在我按下按钮后崩溃。
但是,当我在调试模式下(在设备上)使用该应用程序时,它可以正常工作。它在模拟器和处于 beta 模式的设备上也能正常工作(当它没有连接到 XCode 时)
有什么想法吗?因为我可以在调试模式下调试,所以并没有太困扰我……但我想知道当涉及到提交过程时,这是否会成为问题?
谢谢!
编辑:这会不会是因为我有一个未选中“get-task-allow”选项的权利文件(dist.plist)?我尝试选中此框,但收到错误“可执行文件已使用无效参数签名”
【问题讨论】:
【参考方案1】:有许多领域可能是罪魁祸首。您可能有 #if 或 #ifdef DEBUG,或者您可能(更有可能)有一些未包含在 Beta 目标中的源代码或 xib。
您应该查看日志,无论是在通过 Xcode 运行期间还是在您将设备重新插入 Mac 并使用管理器窗口查看日志文件后,以了解有关崩溃的更多详细信息。如果它与单击按钮有关,请查看在 xib 中设置的按钮操作与代码中的选择器之间的路径。撒上一些 NSLogs 来帮助你。
【讨论】:
如果您使用不同的目标,丢失的文件可能是罪魁祸首。如果你的调试和测试目标相同,那么 NSLog 提示会很有帮助【参考方案2】:我在与其他系统交互的应用程序中遇到过这种情况,其中时间很关键,调试模式会影响与其他系统交互的时间。特别是在对 IBM 大型机进行屏幕抓取时,但任何时间关键的应用程序都可能遇到这种情况。
【讨论】:
以上是关于应用程序在设备上的 Beta 版中崩溃,但未在调试中的主要内容,如果未能解决你的问题,请参考以下文章