2

所以最近我在调试模式下工作但不在分发模式下工作的应用程序遇到了很多麻烦。

是否可以将 xcode 调试工具(例如断点和变量跟踪)与应用程序的临时分发版本一起使用?

如果不是,通常如何调试这样的事情?

4

2 回答 2

1

假设您的崩溃日志没有为您提供任何线索(您需要连接到设备才能获得它们),您可以做很多事情。

但我会从查看崩溃日志开始……线索会在那里,不要忘记 Apple 通过 iTunesConnect 为您提供分发崩溃日志。

1) 丰富的日志记录是一回事。许多开发人员使用开关,以便在调试中,日志转到控制台,但对于其他构建,它们被丢弃。考虑一个不同的选项,您可以在其中登录到文件。然后,您可以将日志文件推送到远程服务器进行调试。设置这一切有点困难,但是一旦你完成了,你会想知道没有它你是如何生活的。

2) 另一种选择是在检测到出现问题时使用 Flurry 并记录事件。当事情不如预期而不是随机崩溃时,这可以涵盖更多受控问题。如果您的条款和条件清楚您正在记录哪些数据以及原因,这对于已发布的应用程序可能是一个有用的功能。

3)确保你做了一个干净的构建,我相信你已经这样做了,但有时它会清除这些问题。

4)您是否使用外部库/模块?我遇到过旧版本 TT 的问题,其中 arm6/7 构建设置错误,这导致分发构建出现问题。基本上检查每个配置文件的构建设置,并确保它符合您的期望。

5) 怀疑竞争条件。在分发模式下(通常是因为关闭了日志记录),您会发现您的应用程序运行得更快一些。这可以揭示写得不好的代码中的时序问题错误。

所以是的......你可以做很多......你只是不能附加调试器;-)

于 2011-07-29T11:23:21.037 回答
0

无法在分发模式下调试应用程序。

Distribution、Debug 和 Release 之间的构建配置差异实际上是您在 XCode 中设置的任何参数。如果您的分发配置给您带来了问题,而发布却没有,那么修复它的最简单方法是返回 Apple 复制发布配置并进行更改以使其成为分发配置的步骤,就像您最初所做的那样。

另一种方法是检查 Release 和 Distribution 的每一行配置并找出不同之处。另一种方式要快很多。:)

于 2011-07-29T11:19:05.543 回答