2009-03-28 6 views
1

Also meine App stürzt ab, und ich bin irgendwie ratlos bei der Verwendung von XCode zum Debuggen.Debugging "Beenden von nicht abgefangenen Ausnahmen" in XCode

Ich fand ein Forum auf Macforums über das Setzen eines Haltepunkts bei "objc_exception_throw" ... obwohl ich nicht wirklich sicher bin, wo ich von dort aus hingehen soll.

Gibt es allgemeine Richtlinien zum Debuggen in XCode?

Antwort

3

Wenn das Programm abstürzt, wird ein Stack-Trace ausgegeben. Sie sollten in der Lage sein, die Linie zu finden, die den Absturz verursacht hat. Dann legen Sie einen Bruchpunkt ein paar Zeilen vor und überprüfen Sie die Dinge.

Der Stack-Trace enthält normalerweise nur Zahlen. Um den Menschen lesbaren Symbolen erhalten Sie verwenden können:

atos -o /Users/NNN/XXX/build/Debug-iphonesimulator/XXX.app/XXX [Anzahl von Stack-Trace]

Die meisten Abstürze sind aufgrund von Speicher befreit werden, bevor es sein sollte. Dies wird oft dadurch verursacht, dass ein Objekt nicht gehalten wird. Sie können die RetainCount-Methode verwenden, um die Retain-Anzahl eines Objekts zu drucken.

Sobald Sie im Debugger sind, können Sie verwenden:

po someobject

Informationen über ein Objekt zu drucken. Oder bekommen die Beibehaltungszähler:

drucken [someobject retainCount]