【发布时间】:2008-10-05 07:34:50
【问题描述】:
当使用自己的 iPhone 进行开发时,可以很容易地通过 XCode->Organizer->Crash Logs 访问任何崩溃日志。
如果他们没有为在 XCode 中的开发设置它,如何访问另一个人手机上的崩溃日志,如果您通过临时分发将您的应用分发给他们进行 beta 测试,很可能会出现这种情况?
【问题讨论】:
-
这个烦人的话题有什么更新吗?!
当使用自己的 iPhone 进行开发时,可以很容易地通过 XCode->Organizer->Crash Logs 访问任何崩溃日志。
如果他们没有为在 XCode 中的开发设置它,如何访问另一个人手机上的崩溃日志,如果您通过临时分发将您的应用分发给他们进行 beta 测试,很可能会出现这种情况?
【问题讨论】:
两种方式:
iTunes 在常规同步期间同步所有崩溃报告。它们可以在 Mac 上的 Library/Logs/CrashReporter/MobileDevice 中找到,在 Windows 上可能位于 %APPDATA% 中。
您可以在任何 Mac 上使用iPhone Configuration Utility for Mac OS X 访问手机的控制台和崩溃日志。注意:适用于 Windows 和 Mac 的 iPhone Web 配置实用程序(注意名称中的“web”)不允许此类访问,仅提供部分配置实用程序的功能。 呃,不,你不能。 Xcode 在 Organizer 中(从 Window 菜单)提供了这个功能,但在 iPCU 中没有。
【讨论】:
来自苹果的Technical Note TN2151:
对于使用 Ad Hoc 或 Enterprise 方法分发的应用程序,获取崩溃报告需要用户合作。具体来说,用户需要从 iTunes 复制的目录中检索崩溃报告。根据平台,目录为:
Mac OS X:~/Library/Logs/CrashReporter/MobileDevice/<DEVICE_NAME>
Windows XP:C:\Documents and Settings\<USERNAME>\Application Data\Apple Computer\Logs\CrashReporter\MobileDevice\<DEVICE_NAME>
Windows Vista 或 7:C:\Users\<USERNAME>\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice\<DEVICE_NAME>
<USERNAME> 是计算机的用户登录名。 <DEVICE_NAME> 是 iPod touch 或 iPhone 的名称,例如“John's iPhone”。
您只对 .crash 文件感兴趣。崩溃报告的文件名以应用程序名称开头并包含日期/时间信息。此外,<DEVICE_NAME> 将出现在文件名的末尾,扩展名之前。
【讨论】:
与@millenomi 所说的有关——据我所知,崩溃日志是在您将 iPhone 连接到计算机时下载的,而不是在您通过 iTunes 同步手机时下载的。如果您的用户将 iTunes 配置为在连接时不同步,那么知道这可以为他们节省同步时间。同样,如果您的应用程序在连接到计算机时崩溃,仅通过 iTunes 同步并不足以下载崩溃日志 - 我发现我需要断开手机与计算机的连接并重新连接。
我只在配置为开发设备的 iPhone 和 iPod touch 上对此进行了测试。不知道这是否有什么不同。
【讨论】:
在 iPhone 5 上,您无需将 iPhone 连接到 iTunes 即可查看日志。不确定其他 iPhone 版本,但您可以通过打开“设置”然后导航至:
设置 -> 常规 -> 关于 -> 诊断和使用 -> 诊断和使用数据
对于您要查找的应用,所有崩溃日志都应在此区域中:
-.ips
不能 100% 确定这是否仅适用于临时应用程序。我认为它适用于任何应用程序。
【讨论】: