Mrz 31 2008

Hello World Programm mit Interface Builder und iPhone SDK Beta 2

Kategorie: Tipps & Tricksholeg

Wem es bisher ein Rätsel war, wie man Interface Builder Nib-Files in der 2. Beta Version des SDK in sein Programm einbindet, dem ist jetzt geholfen. Muthu Arumugam veröffentlichte auf seinem Blog ein Hello World Tutorial welches dies in einer Step by Step Anleitung sehr gut demonstriert.


Feb 09 2008

Tipp: iPhone Programme für Firmware 1.1.3 vorbereiten Teil 2

Kategorie: Tipps & Tricksholeg

Wie man seine iPhone Programme testen kann ob sie unter Firmware 1.1.3 oder höher funktionieren habe ich in einem früheren Artikel bereits beschrieben. In diesem Artikel möchte ich zeigen was man tun muss, damit seine Programme auch wirklich unter allen Firmware Versionen funktionieren. Der großte Unterschied zwischen der 1.1.2 und 1.1.3 Firmware ist, dass ab 1.1.3 die Programme nicht mehr als root, sondern als mobile ausgeführt werden. Dies hat zur Folge, dass Programme, welche unter /var/root/…… ihre Daten abgelegt haben (zB. Preferences), darauf nicht mehr zugreifen können. Wenn man nun aber all seine Pfade auf /var/mobile/…… ändert, dann funktionieren die Programme nicht mehr unter 1.1.2. Um dies zu verhindern sollte man in seinen Programmen den Pfad zum User-Verzeichnis dynamisch beziehen. Da das iPhone ein UNIX System ist, kann man dazu auf die Standard Bibliotheken zurückgreifen:

weiterlesen …


Feb 01 2008

Tipp: iPhone Programme für Firmware 1.1.3 vorbereiten

Kategorie: Tipps & Tricksholeg

Die neue iPhone Firmware 1.1.3 bringt einige Änderungen mit sich, wie zB. dass Programme nicht mehr als Benutzer root, sondern als Benutzer mobile ausgeführt werden. Wenn das Programm seine Ressourcen bisher in /var/root gespeichert hat, muss es diese nun in /var/mobile speichern. Wie kann ich aber nun testen ob mein 1.1.2 Programm auch unter 1.1.3 läuft? Um 100% sicher zu sein, geht natürlich kein Weg daran vorbei sein 1.1.2 iPhone upzugraden oder sich ein anderes 1.1.3 iPhone zu besorgen. Ist dies nicht möglich gibt es einen einfachen Trick: Man führt sein Programm als Benutzer mobile unter der Firmware 1.1.2 aus. Dazu loggt man sich per ssh in sein iPhone 1.1.2 als Benutzer root ein und führt den folgenden Befehl aus:

su mobile

Dann startet man das Programm per Command Line:

/Applications/DeinProgramm.app/DeinProgramm

Wenn das Programm so ohne Fehler läuft, kann man zu 99% davon ausgehen dass es unter 1.1.3 auch funktionieren wird.

UPDATE: Was man tun kann damit sein Programm auf allen Firmware Versionen läuft.


Jan 28 2008

iPhone Programme debuggen

Kategorie: Anleitungen / Dokus, Tipps & Tricksholeg

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:

weiterlesen …