在我的应用中,经常会报告以下日志中的许多崩溃事件,但是即使使用了多个测试设备和iOS版本,我也无法重现它。因此,无法在Xcode上找到原因。因为跟踪中没有步骤,所以导致了我的代码,所以我无法想象找到其来源的任何方法。该应用程序本身非常复杂,当然会使用许多嵌入式的滚动 View 。
有谁知道从哪里开始寻找?还是以前有人遇到过类似的问题?
非常感谢您的帮助!
最好的祝福,
弗洛里安
OS Version: iPhone OS 6.0.1 (10A523)
Report Version: 104
Exception Type: SIGSEGV
Exception Codes: SEGV_ACCERR at 0xd1d28fbc
Crashed Thread: 0
Thread 0 Crashed:
0 libobjc.A.dylib 0x392e65b0 objc_msgSend + 16
1 UIKit 0x35a839f7 -[UIScrollView(UIScrollViewInternal) _scrollViewAnimationEnded:finished:] + 135
2 UIKit 0x35a838e9 -[UIAnimator stopAnimation:] + 469
3 UIKit 0x35b1e257 -[UIAnimator(Static) _advanceAnimationsOfType:withTimestamp:] + 295
4 UIKit 0x35a83381 -[UIAnimator(Static) _LCDHeartbeatCallback:] + 53
5 QuartzCore 0x323d3071 CA::Display::DisplayLink::dispatch(unsigned long long, unsigned long long) + 161
6 QuartzCore 0x323d2fc9 CA::Display::IOMFBDisplayLink::callback(__IOMobileFramebuffer*, unsigned long long, unsigned long long, unsigned long long, void*) + 65
7 IOMobileFramebuffer 0x340befd7 IOMobileFramebufferVsyncNotifyFunc + 155
8 IOKit 0x35ee8449 IODispatchCalloutFromCFMessage + 193
9 CoreFoundation 0x339605db __CFMachPortPerform + 119
10 CoreFoundation 0x3396b173 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 35
11 CoreFoundation 0x3396b117 __CFRunLoopDoSource1 + 139
12 CoreFoundation 0x33969f99 __CFRunLoopRun + 1385
13 CoreFoundation 0x338dcebd CFRunLoopRunSpecific + 357
14 CoreFoundation 0x338dcd49 CFRunLoopRunInMode + 105
15 GraphicsServices 0x33f222eb GSEventRunModal + 75
16 UIKit 0x3596a2f9 UIApplicationMain + 1121
17 0x00005233 main (main.m:14)
最佳答案
我有同样的崩溃。原来是因为我们要使用[controller setContentOffset:newPt animation:YES]为 Controller 设置动画,并在 Controller 上实现了scrollViewDidScroll委托(delegate)方法。单击屏幕上的按钮可让您前进到另一个 Controller ,因此,如果用户在动画进行过程中设法单击该按钮,我们将遇到原始海报的崩溃。解决方法就是在dealloc中将委托(delegate)设置为nil。
关于ios - 在-[UIScrollView(UIScrollViewInternal)_scrollViewAnimationEnded :finished:]上找不到崩溃的原因,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14293725/