我正在尝试分析客户发送给我的崩溃日志,但我无法用它来表示系统库调用。 正确地表示对我自己的方法的调用。分析出现问题并不是很实际。 我已经运行'symbolicatecrash -v',看看是什么原因导致缺乏符号化。可能的原因是:
## /Users/baraupp/Library/Developer/Xcode/iOS DeviceSupport/6.1.3 (10B329)/Symbols/usr/lib/system/libsystem_kernel.dylib doesn't contain armv7s slice
我用'lipo'检查了上面提到的库,它说它们包含'armv7'但没有'armv7s'。在搜索网络后,发现这是iPhone 4和iPhone 5之间的区别。正常的解决方案似乎是插入iPhone 5设备并从那里下载库。但我没有iPhone 5.
有人知道如何解决这个问题吗?
让您了解符号的外观:
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x3bab0350 0x3ba9f000 + 70480
1 libsystem_c.dylib 0x3ba26fb2 0x3b9f8000 + 192434
2 libsystem_c.dylib 0x3ba63366 0x3b9f8000 + 439142
3 libc++abi.dylib 0x3b00bdda 0x3b008000 + 15834
4 libc++abi.dylib 0x3b009094 0x3b008000 + 4244
5 libobjc.A.dylib 0x3b5bca58 0x3b5b4000 + 35416
6 libc++abi.dylib 0x3b009118 0x3b008000 + 4376
7 libc++abi.dylib 0x3b0091b0 0x3b008000 + 4528
8 libc++abi.dylib 0x3b00a626 0x3b008000 + 9766
9 libobjc.A.dylib 0x3b5bc9b0 0x3b5b4000 + 35248
10 CoreFoundation 0x3380829c 0x337ff000 + 37532
11 CoreFoundation 0x338080c4 0x337ff000 + 37060
12 GraphicsServices 0x373e7336 0x373e2000 + 21302
13 UIKit 0x357242b4 0x356cd000 + 357044
14 Flyskyhy 0x000f8a66 main (main.m:17)
15 Flyskyhy 0x000f8a1c 0xf6000 + 10780
答案 0 :(得分:7)
只有两种方法可以解决这个问题:
通常这些符号是最新Xcode版本的一部分,但是当iOS版本仅包含错误修复但没有API更改时,Apple并不总是提供Xcode更新。
答案 1 :(得分:3)
我在使用XCode5的iOS7应用程序中遇到了这个问题,即使我拥有所有正确的符号。
我发现我把dSYM文件从聚光灯可以索引它的档案中取出,但是崩溃日志只是部分符号化(如问题所示)。但是我把实际的.app文件保留在xcarchive中,并且它无法被聚光灯索引。只要我将该文件从存档中复制到可见位置,我就能够正确地进行符号化。
答案 2 :(得分:0)
以下是Kerni的回答: 您可以使用目标版本的iOS安装相关的Xcode并复制〜/ Library / Developer / Xcode / iOS DeviceSupport /