Frage

Ich habe in den letzten zwei Tagen versucht, dies zu lösen. Ich kann nicht verstehen, warum meine App abstürzt.

Ich benutze JASidePanel Bibliothek, um in meiner App den Panel -Effekt zu erzielen. Das linke Seitenfeld ist eine Tabelleansicht, die wie Navigationshandbuch für das Mittelfeld wirkt. In einem Szenario soll das Mittelfeld nur das linke Seitenfeld schließen und einen weiteren Navigationscontroller (mit einem konsistenten) Wurzelansicht Controller präsentieren. Manchmal stürzt dieser Übergang meine App jedoch ab.

Ich habe festgestellt, dass der Absturz nicht im Code des Jasidepanel oder in meinem Center Panel View Controller Code ([self presentViewController:self.cityNavigationController animated:YES completion:nil];). Ich stellte klar fest, dass die App aufgrund eines internen Absturzes aufgrund des iOS -Frameworks durch den Anweisungen durch den Anweisungen stürzt und dies herausgefunden habe.

Trotzdem denke ich, dass ich etwas falsch mache. Kann mir jemand vorschlagen, warum dieser Absturz passieren könnte? Was soll ich suchen, um dieses Problem zu lösen? Gibt es Schritte oder Verfahren, die ich befolgen kann, um das Problem zu erkennen?

Jede Hilfe wird geschätzt.

Geräteprotokoll:

Thread 0 Crashed:
0   libobjc.A.dylib                 0x3a085b26 objc_msgSend + 6
1   UIKit                           0x3257c788 -[UISearchBar _didMoveFromWindow:toWindow:] + 152
2   UIKit                           0x3249a576 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 662
3   UIKit                           0x3249a576 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 662
4   UIKit                           0x324bb5e2 -[UIScrollView _didMoveFromWindow:toWindow:] + 46
5   UIKit                           0x3249a576 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 662
6   UIKit                           0x3249a576 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 662
7   UIKit                           0x3249a576 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 662
8   UIKit                           0x3249a576 -[UIView(Internal) _didMoveFromWindow:toWindow:] + 662
9   UIKit                           0x32499e68 __45-[UIView(Hierarchy) _postMovedFromSuperview:]_block_invoke + 108
10  Foundation                      0x30688d98 -[NSISEngine withBehaviors:performModifications:] + 208
11  UIKit                           0x32499cf2 -[UIView(Hierarchy) _postMovedFromSuperview:] + 294
12  UIKit                           0x324a6998 -[UIView(Internal) _addSubview:positioned:relativeTo:] + 1400
13  UIKit                           0x324a6412 -[UIView(Hierarchy) addSubview:] + 26
14  UIKit                           0x32587d8a -[UITransitionView transition:fromView:toView:removeFromView:] + 974
15  UIKit                           0x32587998 -[UIViewControllerBuiltinTransitionViewAnimator animateTransition:] + 444
16  UIKit                           0x32587406 __101-[UIWindowController transition:fromViewController:toViewController:target:didEndSelector:animation:]_block_invoke_2 + 1250
17  UIKit                           0x3251afb6 _applyBlockToCFArrayCopiedToStack + 314
18  UIKit                           0x324931ee _afterCACommitHandler + 426
19  CoreFoundation                  0x2fcf31ca __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 18
20  CoreFoundation                  0x2fcf0b6c __CFRunLoopDoObservers + 280
21  CoreFoundation                  0x2fcf0eae __CFRunLoopRun + 726
22  CoreFoundation                  0x2fc5bc22 CFRunLoopRunSpecific + 518
23  CoreFoundation                  0x2fc5ba06 CFRunLoopRunInMode + 102
24  GraphicsServices                0x3493a27e GSEventRunModal + 134
25  UIKit                           0x324ff044 UIApplicationMain + 1132
26  Housing India                   0x000a2606 main (main.m:16)
27  libdyld.dylib                   0x3a592ab4 start + 0
War es hilfreich?

Lösung

Nun, wenn für irgendjemanden dies hilft.

Das Problem war mit dem iOS -Framework. Das Problem war die Umsetzung von UinavigationController. Der Absturz fand im Rahmen selbst statt. Der einzig mögliche Ausweg bestand darin, den Navigationscontroller jedes Mal zu instanziieren, bevor er ihn präsentiert. Dies verringert die Leistung, hatte aber keine andere Option. Apple, hat wirklich viele Einschränkungen und Annahmen. :P

Erläuterung: Wir mussten einen Navigationscontroller mit modaler Animation präsentieren. Wir versuchten, die Instanziierung des Navigationscontrollers immer wieder zu vermeiden, indem wir sie einmal instanziiert und versuchten, ihn wiederzuverwenden. Aus diesem Grund haben wir jedoch irgendwann einen Absturz beobachtet. Ich weiß nicht genau, was der Absturz bedeutet, aber es hat ihn behoben, indem er es immer wieder instanziiert hat.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top