table view row height must not be negative - provided height for index path (<NSIndexPath: 0xc000000001000816> {length = 2, path = 8 - 8}) is nan
(null)
((
0 CoreFoundation 0x000000018d9b11d0 <redacted> + 148
1 libobjc.A.dylib 0x000000018c3e855c objc_exception_throw + 56
2 CoreFoundation 0x000000018d9b108c <redacted> + 0
3 Foundation 0x000000018e46902c <redacted> + 112
4 UIKit 0x0000000193985de0 <redacted> + 780
5 UIKit 0x0000000193945478 <redacted> + 2756
6 UIKit 0x0000000193947850 <redacted> + 108
7 UIKit 0x000000019394779c <redacted> + 136
8 UIKit 0x0000000193947188 <redacted> + 1708
9 *****(app name) 0x100084b6c*****(app name) + 543596
10 *****(app name) 0x1004231ac*****(app name) + 4338092
11 *****(app name) 0x100420d30*****(app name) + 4328752
12 *****(app name) 0x1002b01bc*****(app name) + 2818492
13 *****(app name) 0x1002b1c40*****(app name) + 2825280
14 *****(app name) 0x1002ae408*****(app name) + 2810888
15 *****(app name) 0x1000ba4b0*****(app name) + 763056
16 libdispatch.dylib 0x000000018c83a1fc <redacted> + 24
17 libdispatch.dylib 0x000000018c83a1bc <redacted> + 16
18 libdispatch.dylib 0x000000018c83eb2c _dispatch_main_queue_callback_4CF + 428
19 CoreFoundation 0x000000018d95e810 <redacted> + 12
20 CoreFoundation 0x000000018d95c3fc <redacted> + 1660
21 CoreFoundation 0x000000018d88a2b8 CFRunLoopRunSpecific + 444
22 GraphicsServices 0x000000018f33e198 GSEventRunModal + 180
23 UIKit 0x00000001938d17fc <redacted> + 684
24 UIKit 0x00000001938cc534 UIApplicationMain + 208
25 *****(app name) 0x1001bdf34 *****(app name) + 1826612
26 libdyld.dylib 0x000000018c86d5b8 <redacted> + 4
)
dSYM UUID: A6B16633-15CD-3C9A-AC5C-2E41C1551AC2
CPU Type: arm64
Slide Address: 0x0000000100000000
Binary Image: ****(app name)
Base Address: 0x000000010007c000
第一步:获取问题解决工具
解决工具:https://github.com/answer-huang/dSYMTools
第二步:Xcode -> Window -> Organizer -> Show xcarchive file in Finder -> Right Click Your xcarchive file -> Select "Show Package Contents"
获取dsYM文件夹里面的dsYM(上图模样)
可以单独拿出来,打包之后,可以通过/Users/你的mac用户名/Library/Developer/Xcode/Archives 获取也行
第三步:获取这个包的uuid,直接拖进去dsYM工具会显示这个uuid
或者在终端输入dwarfdump --uuid 加上包(上面图对应的路径)的路径就可(这个路径一定是以dSYM结尾的文件),能获取uuid
xcrun dwarfdump --uuid dSYM的路径 同样可以获取uuid.
第四步:比较线上的uuid和当前的包的uuid是否一致。线上崩溃的很容易看到,如下图,就有。
第五步:将app后面的崩溃地址一个一个输入,找到崩溃的代码,这样我们就能基本定位出错的地方。
第六步: