Jan 28
iPhone Programme debuggen
Um Fehler in einem Programm zu finden, benutzt man normalerweise einen Debugger. Da der iPhone-Code für ARM Prozessoren kompiliert wird, kann dieser auch nicht auf unserem Mac OS X oder Windows ausgeführt und damit auch nicht debugged werden. Dies ändert sich vielleicht mit dem offiziellen SDK von Apple, welches Ende Februar erscheinen soll. Wer trotzdem seinen Code debuggen muss, kann dies tun, indem er Text in der Konsole ausgibt. Dazu verwendet man in seinem iPhone Programm die Funktion NSLog(). Mit Hilfe dieser Funktion kann man sogar ganze Objekte dumpen. Hier ein kleines Beispiel:
...
- (int) numberOfRowsInTable: (UITable *)table
{
NSLog(@"Funktion: numberOfRowsInTable: %d", 2);
NSLog(@"UITable Objekt: %@", table);
return 2;
}
...
Dies funktioniert aber nur, wenn man das iPhone Programm nicht direkt über das Springboard startet, sondern per SSH. Hierzu öffnet man das Terminal und loggt sich per SSH auf seinem iPhone ein. Dann startet man das Binary, welches sich in dem Package-Ordner des Programm befindet:
ssh root@IP-ADRESSE-DES-IPHONES /Applications/MeinProgramm.app/MeinProgramm
Alle Ausgaben von NSLog() sollten nun im Terminal zu sehen sein.
Tipp:
Ein so gestartetes Programm lässt sich auch nur über SSH beenden. Dazu betätigt man die Tastenkombination Control-C.








17.02.2008 um 15:04 Uhr
[…] auf iPhone-dev.de habe ich einen Artikel gefunden, in dem erklärt wird, wie man Debugausgaben in einem Programm […]