Entwicklung

Wie entsteht eigentlich eine iPhone App?

Von der Idee bis zur Einreichung in den App-Store – ein Überblick
Von

Mit seinem AppStore für das Apple iPhone, das Apple iPhone 3G, iPhone 3G S und den Apple iPod Touch hat Apple ein wahres Ökosystem für Software-Entwickler geschaffen. Mehr als 100 000 Applikationen warten aktuell darauf, von den Nutzern auf ihre Geräte heruntergeladen zu werden. Mittlerweile gibt es neben professionellen Programmierern größerer Softwareschmieden auch eine Flut von Entwicklern, die als Klein-Unternehmer versuchen, am Erfolg des AppStores teilzuhaben.

Datenblätter

Dabei ist der Software-Shop des kalifornischen Geräte-Herstellers bei weitem nicht das erste Angebot zur Verbreitung von mobilen Applikationen. Lange vor Apple gab es mit Java-Anwendungen für Symbian oder Windows Mobile genügend Möglichkeiten für Entwickler, entsprechende Software zu erstellen. Ebenso hat Google mit Android eine weitere Entwicklungsumgebung geschaffen.

Dennoch schafft es vor allem Apple, besonders viele Software-Hersteller für die AppStore-Entwicklungsumgebung zu gewinnen. Doch wie läuft die Herstellung solch einer App eigentlich ab? Wie kommt diese in den AppStore? Und welches Know-How und welche Werkzeuge benötigt man dafür? Diesen Fragen wollen wir im Folgenden anhand unserer eigenen iPhone-App, der mobilen Version des 0180-Telefonbuchs, nachgehen.

Entwickelt und programmiert hat unsere App Thomas Lederer von ise-solutions, der auch Entwickler von weiteren erfolgreichen Apps im AppStore ist.

App-Entwickler im Interview

Bild von Thomas Lederer Thomas Lederer
Entwickler von ise-solutions
Bild: ise-solutions

Herr Lederer, Sie sind Entwickler von erfolgreichen Apps wie dem "Kosten Check D1" und unserem "0180-Telefonbuch". Wie entsteht eine solche iPhone-App?

Wie bei jeder Software-Entwicklung benötigt man zunächst eine gute Idee für eine App. Nach der Ideenfindung muss man sich dann in einem ersten Schritt Gedanken zu den beabsichtigten Funktionen und der groben Gestaltung der Benutzeroberfläche machen: Wie soll die App aufgebaut sein und welche Features soll sie bieten. Danach kommt die eigentliche Programmierung.

Mit welchen Tools programmiert man iPhone-Apps? Und woher bekommt man diese?

Zunächst einmal muss man sich für das iPhone Developer Programm bei Apple registrieren. Dort erhält man dann die Möglichkeit, das so genannte SDK (Software Developement Kit) herunterzuladen. Dieses bietet die XCode-Tools, die für die App-Entwicklung nötig sind. Ebenso im Paket enthalten ist ein iPhone-Simulator, auf dem man die iPhone-App testen kann. Der grundsätzliche Download des SDK und die Entwicklung in XCode sind kostenlos. Für die anschließende Veröffentlichung benötigt man dann eine Entwicklerlizenz, die in Deutschland für 79 Euro jährlich erhältlich ist.

Benutzt Apple für seine Apps eine besondere Programmiersprache?

Ja. Apple hat für die App-Entwicklung das Cocoa Touch-Framework entwickelt, eine Anpassung des bei Apple sonst üblichen Cocoa-Frameworks. In dessen Bibliotheken, Programmierschnittstellen (APIs) und Runtimes kommt Objective C zum Einsatz. Objective C ist eine objektorientierte Programmiersprache, die Apple für sich aus der Programmiersprache C sowie Smalltalk-Elementen entwickelt hat. Wenn man sich mit der Entwicklung von Mac-Programmen auskennt, muss man nicht groß umdenken, es ist die gleiche Entwicklungsumgebung.

Was passiert, wenn man die App fertig entwickelt hat, man also alle Fehler bereinigt hat und im iPhone-Simulator alle Tests stattgefunden haben?

Der iPhone-Simulator reicht in vielen Fällen nicht aus, um wirklich alle Szenarien und Funktionen zu testen. Bevor man die App bei Apple einreicht, ist es daher sinnvoll, diese zunächst einmal direkt auf iPhone oder iPod Touch zu testen. Dafür benötigt man zunächst den unique device identifier (UDID) des Gerätes, auf welchem man die App installieren will. Diesen kann man mit angeschlossenem iPhone in iTunes sehen. Diese UDID wird dann verwendet, um über seinen iPhone Entwicklungs-Account ein sog. provisioning-profile zu erzeugen. Anschließend kann direkt aus der Entwicklungsumgebung oder auch über iTunes die Applikation über USB auf seinem Testgerät installieren und testen.

Jetzt ist die App hinreichend getestet. Wie kommt diese in den AppStore?

Damit die App in den AppStore gelangt, muss man sie bei Apple einreichen. Dies erfolgt einfach über den Upload auf ein von Apple bereitgestelltes Web-Portal "iTunes-Connect". Ein Reviewteam braucht dann aktuell etwa zwei Wochen um die Applikation zu überprüfen. Ist diese aus Apple Sicht in Ordnung, wird sie im AppStore verfügbar. Falls nicht, bekommt der Entwickler einen Hinweis mit Ablehnung oder mit Aufforderung eine Korrekturversion zu liefern.

Wurde Ihnen schon einmal eine App abgelehnt?

Ja, konkret ist dies beim 0180-Telefonbuch passiert. Das Review-Team hatte festgestellt, dass der Button zur direkten Ersatznummern-Wahl in der App auch bei iPod-Touch-Nutzern angezeigt wird. Da diese naturgemäß nicht wählen können, erfolgte eine Ablehnung von Apple. Das Begründungsschreiben war allerdings sehr nachvollziehbar und hilfreich, so dass wir den Fehler schnell beheben konnten. Apple scheint sich in der Tat jede App sowie auch Updates genau anzusehen, wie man hört sind aktuell 40 Vollzeit-Mitarbeiter für den Review zuständig. Aufgrund der Vielzahl eingereichter Apps weltweit sind allerdings die Wartezeiten sehr lang geworden.

Vielen Dank für das Interview, Herr Lederer.

Welche Arbeiten abseits der technischen Entwicklung nötig sind und welche Funktionen die neue Version der 0180-Telefonbuch-App haben wird, lesen Sie auf der nächsten Seite.

Aktuelle Meldungen zum Thema AppStores

Weitere Interviews