Xcode 5的管理器有一个视图,可以列出所有的崩溃日志。我们可以拖放这里的崩溃日志。但自从Xcode 6以来,我知道他们已经将设备移出了组织,并为相同的设置了一个新的窗口。但我没有找到一个地方,我查看崩溃日志,我拖拽在Xcode 5后上升到Xcode 6。有人知道答案吗?
当前回答
对我来说,.crash文件就足够了。没有。dsym文件和。app文件。
我在mac上运行了这两个命令,在那里我建立了存档,它工作了:
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash /yourPath/crash1.crash > /yourPath/crash1_symbolicated.crash
其他回答
对崩溃日志进行符号化的最简单方法:
在IPA构建过程中保存组织者的xcarchive文件,以备将来使用。 当崩溃发生时,从受影响的设备上收集崩溃日志。扩展名应该是.crash。如果崩溃日志是.ips格式,只需将其重命名为.crash。 双击存储路径中的xcarchive,使其出现在管理器中(如果尚未出现)。 打开xcode窗口->设备和模拟器->查看设备日志->所有日志->拖放.crash文件。
等待5秒。砰!堆栈跟踪中的应用程序调用将被符号化! 不过,你仍然可以看到很多符号!这些是内部库和框架调用。
这是最简单的一种方法,我已经试过了!
好的,我意识到你可以这样做:
在Xcode > Window > Devices中,选择连接的iPhone/iPad/etc左上角。 查看设备日志 所有日志
您可能在那里有很多日志,为了便于稍后找到导入的日志,您可以在此时删除所有日志……除非他们对你来说意味着金钱。或者除非你知道崩溃发生的确切时间点——无论如何都应该写在文件中……我很懒,所以我只是删除所有旧的日志(这实际上花了一段时间)。
3 a。确保日志文件的扩展名为.crash(而不是.txt或.ips)
只需将文件拖放到该列表中。这对我很管用。
您需要访问包含DWARF文件的. dsym包(文件夹),并且应该使用编辑器打开.crash文件。
查看回溯部分,你应该会看到如下内容:
...
13 TheElements 0x0000000100f62ca0 0x100f5c000 + 27808
14 UIKitCore 0x00000001843e3044 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 356 (UIApplication.m:2328)
...
Binary Images:
0x100f5c000 - 0x101673fff TheElements arm64 ...
...
注意stacktrace部分的第3列(0x0000000100f62ca0)中的长地址。 注意第4列中的简短地址(0x100f5c000) 注意二进制图像部分的架构(arm64) 执行以下操作:
$ atos -arch <arch> -o TheElements.app.dSYM/Contents/Resources/DWARF/TheElements -l <short_address> <long_address>
你应该得到这样的结果:
-[AtomicElementViewController myTransitionDidStop:finished:context:]
权威来源:https://developer.apple.com/library/content/technotes/tn2151/_index.html#//apple_ref/doc/uid/DTS40008184-CH1-SYMBOLICATE_WITH_ATOS
注意:如果由于任何原因你无法访问. dsym文件,你可以使用Xcode>Product>Archive重新创建.xcarchive,但要确保你构建的是完全相同的代码。然后可以从.xcarchive包中提取符号。
对我来说,.crash文件就足够了。没有。dsym文件和。app文件。
我在mac上运行了这两个命令,在那里我建立了存档,它工作了:
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
/Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.framework/Versions/A/Resources/symbolicatecrash /yourPath/crash1.crash > /yourPath/crash1_symbolicated.crash
确保你的Xcode应用名称不包含任何空格。这就是它对我不起作用的原因。所以/应用程序/ Xcode。/Applications/Xcode应用程序不能工作。
推荐文章
- 如何删除默认的导航栏空间在SwiftUI导航视图
- Ios模拟器:如何关闭应用程序
- 准备好开发人员ID的macOS安装程序包
- 创建配置文件失败
- 如何在iOS中使用Swift编程segue
- Swift -整数转换为小时/分钟/秒
- Swift:声明一个空字典
- 在成功提交我的应用程序后,“太多符号文件”
- 首先添加一个UIView,甚至是导航栏
- 复制并重命名Xcode项目和相关文件夹
- 我如何改变UIButton标题颜色?
- 在Swift中如何调用GCD主线程上的参数方法?
- NSLayoutConstraints是可动画的吗?
- iOS -构建失败,CocoaPods无法找到头文件
- Xcode 4挂在“附加到(应用程序名称)”