Keine finden Grund für den Absturz, auf -[UIScrollView(UIScrollViewInternal) _scrollViewAnimationEnded:fertig:]
In meine app viele Abstürze mit dem folgenden Protokoll gemeldet werden, sehr Häufig aber auch mit mehreren test-Geräte und iOS-Versionen bin ich nicht in der Lage, ihn zu reproduzieren. Es gibt also keine Möglichkeit, den Grund zu finden auf Xcode. Denn es gibt keinen Schritt in der Spur, die führt zu meinem code, ich kann mir nicht vorstellen irgendeine Weise zu finden, die Herkunft des es. Die App selbst ist sehr Komplex und natürlich vielen Blättern, Ansichten, eingebettet ist, verwendet werden.
Hat jemand eine Idee, wo zu Beginn der Suche? Oder hat jemand schon ein ähnliches problem vor?
Ich bin sehr dankbar für jede Hilfe!!!
Beste Grüße,
Florian
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)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hatte ich den gleichen Absturz. Es stellte sich heraus zu sein, denn wir waren zu animieren, ist ein controller mit [controller setContentOffset:newPt animated:YES], und wir implementieren die scrollViewDidScroll delegate-Methode auf dem controller. Klicken auf eine Schaltfläche auf dem Bildschirm können Sie vorab an einem anderen controller, so dass, wenn ein Benutzer geschafft, klicken Sie auf die Schaltfläche, während die animation war im Gange, wir treffen würde das original-poster der Absturz. Die Lösung ist einfach, um die Delegierten zu-null in dealloc.
Den
SIGSEGV
signal zu einem Prozess geschickt wird, wenn es eine ungültige virtuellen Speicher eine Referenz oder einen segmentation fault. (siehe Wikipedia)So dass Sie Zugriff auf ein Objekt, das wahrscheinlich veröffentlicht wurde. Ist das während einer animation, vielleicht ist Sie definiert einen Selektor aufgerufen werden, nachdem die animation beendet wurde oder sowas? Das wäre, würde ich beginnen zu suchen.
Möchten Sie vielleicht einen Blick auf diesen thread: Gibt es eine Möglichkeit zu stornieren, eine animierte UITableView/UIScrollView setContentOffset:animiert:?
Dass die Diskussion es vermuten lässt, könnte ein Delegat, der dealloc würde, bevor die scrollview sendet die animation endete Nachricht.