Apple iPhone SDKWir basteln uns eine iPhone-Anwendung

Endlich wird das iPhone zur (relativ) offenen Plattform für Entwickler. Gestern hat Apple das Software Development Kit (SDK) zu seinem Telefon vorgestellt. Wir spielen etwas mit der Beta-Version herum.

iPhone SDK bei Neuerdings.com
Bescheiden, aber echt: Unsere erste iPhone-Applikation, natürlich ein klassisches Hello World…

Dass das iPhone mehr ist als ein normales Telefon, ist allgemein bekannt: Mit seinem leistungsfähigen Prozessor, dem wunderbaren Touchscreen und dem vollwertigen Mac-OS-X-Betriebssystem unter der Haube schreit es geradezu danach, mit kreativer Software erweitert zu werden.

Zu Beginn hatte sich Apple immer auf die Position gestellt, dass Web-Anwendungen ja eigentlich ausreichen für das, was Drittentwickler gern mit dem iPhone machen würden. Es wurde aber schnell klar, dass dem nicht so war. Die Hacker-Szene lieferte schon nach kurzer Zeit viele kleine, durchaus spassige Applikationen. Und Apple hat nun die Wünsche seiner Kunden erhört und erlaubt es Entwicklern offiziell, ihre eigenen Programme für das iPhone zu schreiben.

Das wichtigste Element hierfür ist ein brauchbares SDK, und genau das können sich interessierte Entwickler seit gestern bei Apple herunterladen. Der Download braucht mit satten 2 GB etwas Geduld, denn geliefert wird eine ausgewachsene Entwicklungsumgebung, wie sie sonst für die Erzeugung “richtiger” Mac-Anwendungen verwendet wird. Aber nach einigen Stunden waren wir so weit, die neue Programmierer-Spielweise ausprobieren zu können.

Kurz gesagt: Was Apple da abgeliefert hat, kann nach einem ersten Augenschein sehr überzeugen. Das ist nicht einfach ein experimenteller Codehaufen, sondern eine vollwertige, schon recht ausgereifte Entwicklungsumgebung, mit der Profis schon jetzt sehr produktiv werden können.

Wer schon vorher mal auf dem Mac mit XCode entwickelt hat, braucht sich nicht gross umzugewöhnen, denn das iPhone-SDK baut auf dieser vertrauten Umgebung auf. Und nicht nur das: Auch die Menge an mitgelieferter Dokumentation ist durchaus beeindruckend.

iPhone SDK Dokumentation
Da gibt’s was zu lesen: Die Dokumentationsbibliothek für iPhone-Entwickler

Dabei hat Apple freilich nicht wirklich so viel neu schreiben müssen, denn die iPhone-Architektur baut auf bekannten Elementen auf: Mac OS X, diversen recht standardisierten Netzwerkdiensten, der Open-Source-Datenbank SQLite sowie dem Applikationsframework Cocoa, das jetzt neu als “Cocoa Touch” fürs iPhone adaptiert und erweitert wurde. In dieser Sammlung sind auch allerlei Libraries für 2D- und 3D-Grafik, Audio und Video enthalten, so dass Entwickler voll die multimedialen Fähigkeiten des iPhone ausnutzen können.

Gewöhnungsbedürftig für Entwickler aus anderen Welten ist die verwendete Sprache Objective-C, deren Wurzeln bis zur längst verblichenen (und später von Apple gekauften) Firma NeXT zurückreichen. Objective-C ist eine Erweiterung von C, die objektorientiert, aber in vielen Dingen simpler als das verbreitertere C++ ist. Wer schon mit C programmiert hat und mit objektorientierten Konzepten vertraut ist, dürfte damit wenig Schwierigkeiten haben.

Ein Programmierprojekt spielt sich im iPhone-SDK in einem übersichtlichen Fenster ab, in dem alle bearbeiteten Ressourcen zu sehen und alle nötigen Dienste aufrufbar sind – sehr komfortabl. Das ganze kommt einem sowieso ein bisschen wie “iTunes für Programmierer” vor. Hartgesottene Unix-Command-Prompt-Fanatiker, die immer noch denken, dass VI der einzig richtige Editor ist, werden das alles zu verspielt finden, aber für Otto Normalprogrammierer ist diese freundliche Umgebung ideal.

iPhone SDK Projektfenster
Ein Programmierprojekt im iPhone-SDK.

Die zahlreichen bestehenden Frameworks (in dieser Beispielapplikation werden CoreGraphics, Foundation und UIKit verwendet) lassen sich ebenfalls sehr einfach hinzufügen. Ganz oben links lässt sich auswählen, ob das Programm im mitgelieferten iPhone-Simulator gestestet werden oder direkt auf ein angehängtes reales Gerät gespielt werden soll.

Dafür muss ein iPhone speziell softwaremässig präpariert werden, man sollte also nicht davon ausgehen, dass man auf seinem Alltags-iPhone problemlos testen kann. Leider steht die zum Testen nötige Version 2.0 der iPhone-Software aber erst für wenige ausgesuchte Entwickler bereit, weshalb ein echter Test auf dem physischen iPhone flach fiel. Das Steuerungsinterface ist aber schon vorhanden, so dass man sich vorstellen kann, wie man ab Juni dann seine selbstgebastelten Programme zum Telefon rüberkopieren kann.

iPhone SDK Testumgebung
Hier wird man dereinst seine Programme auf sein iPhone zum Testen rüberkopieren können.

Aber so lange braucht man für erste Tests nicht zu warten, denn wie gesagt steht ein Simulator zur Verfügung, der auf dem Mac läuft (jawohl, einen Mac braucht man zum Entwickeln… Was für eine Überraschung…).

iPhone SDK Simulator
Künstlich, sieht aber aus wie echt: Der iPhone-Simulator

Der Simulator verhält sich wirklich genau wie ein richtiges iPhone, bis auf die Tatsache, dass nur die nötigsten Applikationen installiert sind. Mit der Realitätsnähe hat man es bei Apple wohl fast etwas zu gut gemeint: Nicht mal mit der normalen Mac-Tastatur kann man tippen, sondern man muss mit der Maus die Onscreen-Tastatur bedienen. Ganz fertig scheint die Sache auch noch nicht zu sein, denn drehen liess sich das virtuelle Gerät beispielsweise noch nicht.

Wie immer beim Programmieren fängt man am besten mit bestehendem Beispielcode an, und davon liefert Apple ein bisschen was mit. Es geht bisher aber nur um ziemlich rudimentäre Themen, von den in der Pressekonferenz gezeigten schönen Anwendungen ist noch nichts zu sehen.

Aber immerhin, ein schickes “Hello World” zum Ausprobieren ist da, und dieses Programm haben wir auch gleich mal selbst etwas modifiziert. Bei dieser Beispielanwendung wird auch gleich klar: Das iPhone-SDK ist für Programmierer gedacht und nicht für Enduser, denn wer beim Anblick von richtig schönem Objective-C-Code Schweissausbrüche kriegt, ist hier falsch.

iPhone SDK C Code
Das Code-Fenster: Man hat auch schon einfachere “Hello Worlds” gesehen…

Der Editor bietet den üblichen Komfort, den man von modernen Entwicklungsumgebungen erwartet. Ausserdem gibt es eine gute eingebaute API-Doku, Debugging-Funktionalitäten, eine Versionsverwaltung, Schnittstellen zu gängigen Source-Code-Managementsystemen (SVN, CVS etc.) und vielerlei mehr.

Was derzeit noch fehlt, ist der Interface Builder, mit dem man dereinst sehr einfach schicke Benutzeroberflächen per Drag & Drop erstellen können soll. Gut möglich, dass dann das Entwickeln einfacher iPhone-Anwendungen nochmal um einiges einfacher wird.

Die Qualität des iPhone SDK ist schon ziemlich erstaunlich hoch, auch wenn es sich spürbar noch um eine Beta-Version handelt. Da sieht im Vergleich dazu Googles SDK für die neue Android-Plattform ziemlich alt (bzw. vielmehr ziemlich jung und unreif) aus.

Android vs. iPhone
Die neuerdings.com-Homepage einmal im Android-Emulator von Google, einmal im iPhone-Emulator von Apple. Noch Fragen dazu, wer technisch weiter ist?

Nörgeln kann man aber natürlich darüber, dass wie meistens bei Apple alles ausschliesslich auf Apple-Technologie basiert und es keine Alternativen gibt. Wer fürs iPhone Software schreiben will, braucht einen Mac, kann nur mit XCode entwickeln, nur Apples eigene Frameworks verwenden usw. Wer beispielsweise lieber offene Entwicklungsumgebungen wie Eclipse mag, hat Pech gehabt.

Trotzdem: Man kann sich gut vorstellen, dass dieses schöne SDK viele Entwickler motivieren wird, Software für das iPhone zu entwickeln. Die Vorteile des Zielgerätes sprechen ja sowieso für sich. Für die Verbreitung seiner Werke muss man aber wohl zumindest derzeit in den sauren Apfel beissen und Apples Monopol samt 30% Verkaufskommission akzeptieren.

Mehr lesen

Twelve South Plug Bug: Aus eins mach zwei durch Huckepack

3.11.2011, 2 KommentareTwelve South Plug Bug:
Aus eins mach zwei durch Huckepack

Tvelve South stellt nicht nur iPad-Hüllen her, die nach antiquarischen Büchern aussehen, sondern auch einen raffinierten Aufsatz für das Ladegerät von MacBooks, der dessen Nutzen verdoppelt

xqisit xqBeats: Bluetooth-Box mit Freisprech-Funktion

27.7.2011, 2 Kommentarexqisit xqBeats:
Bluetooth-Box mit Freisprech-Funktion

xqBeats vom Hersteller xqisit ist eine kleine schwarze Bluetooth-Box, die dank eingebautem Mikrofon auch als Freisprecheinrichtung verwendet werden kann.

Apple WWDC Keynote: Apple macht eine Menge Menschen unglücklich

7.6.2011, 15 KommentareApple WWDC Keynote:
Apple macht eine Menge Menschen unglücklich

Auf der Eröffnungspräsentation zur World Wide Developer Conference hat Steve Jobs Apples neue Versionen von Mac OSX und iOP vorgestellt und verraten, was es mit der iCloud auf sich hat. Nicht jeder wird über die Neuerungen glücklich sein

Philips DS6100: Dem iMac zu Füssen gelegt

13.2.2012, 0 KommentarePhilips DS6100:
Dem iMac zu Füssen gelegt

Wie bringt man sein iPhone am besten auf dem Schreibtisch unter? Einfach nur neben der Tastaur ablegen? Oder vielleicht doch im DIY-iPhone-Halter aus LEGO abstellen? Wer es einen Tick edler möchte und dazu noch auf den schimmernden Glanz von mattiertem Aluminium abfährt, der findet vielleicht bei Philips das passende Outfit für sein Smartphone aus Cupertino.

iSupport Cine Bundle: Professionelle Videos mit dem iPhone

30.1.2012, 4 KommentareiSupport Cine Bundle:
Professionelle Videos mit dem iPhone

Mit dem iPhone 4S kann man recht gute Videos aufnehmen. Mit dem iSupport werden diese auch wackelfrei.

Catalyst EscapeCapsule: Rettungskapsel für das iPhone

29.1.2012, 3 KommentareCatalyst EscapeCapsule:
Rettungskapsel für das iPhone

Die EscapeCapsule von Catalyst ist aus einem Kickstarter-Projekt hervorgegangen, das auf grosse Resonanz gestossen ist. Die durchsichtige Kunststoffhülle schützt das iPhone vor Wasser, Sand, Kratzern und Stürzen - ideal für den nächsten Urlaub

Microsoft Mouse: Mäuse ohne Grenzen

13.9.2011, 5 KommentareMicrosoft Mouse:
Mäuse ohne Grenzen

Unter dem Namen "Mouse without Borders" hat ein Team von Microsoft ein geniales neues Konzept vorgestellt.

Windows-7-Tipp: Sage Thumb für den Explorer

10.8.2011, 1 KommentareWindows-7-Tipp:
Sage Thumb für den Explorer

Mit dem kleinen Programm Sage Thumb kann man dem Windows Explorer endlich beibringen, das alle Bildformate erkannt werden.

Windows 8: Preview-Version schon  nächste Woche?

29.5.2011, 8 KommentareWindows 8:
Preview-Version schon nächste Woche?

Das neue Windows 8 kommt schneller auf den Markt als erwartet. Ob das eine gute Entscheidung ist?

11 Kommentare

  1. lukas
    schrieb am 8. März 2008 um 11:14 Uhr (#)

    ist SDK nur für das Iphone oder auch für den ipod touch? Und wenn nein wird es es geben?

  2. Matthias Lehming
    schrieb am 8. März 2008 um 11:43 Uhr (#)

    SOweit ich weiß, funktioniert das auch auf dem iPod Touch mit der entsprechenden Firmware.

    Werden die Programme eigentlich nur gegen Geld angeboten oder gibt es auch kostenlose Programme?

  3. mds
    schrieb am 8. März 2008 um 12:25 Uhr (#)

    Werden die Programme eigentlich nur gegen Geld angeboten oder gibt es auch kostenlose Programme?

    Darüber entscheiden die Entwickler; sie müssen für die Distribution per iTunes einmalig USD 99 bezahlen, können danach ihre Applikationen aber kostenlos vertreiben. Nicht entscheiden können die Entwickler hingegen, ob sie iTunes und DRM verwenden möchten ? :(

  4. Fabian
    schrieb am 8. März 2008 um 12:28 Uhr (#)

    Es wird auch kostenlose Programme geben!

  5. Matthias Lehming
    schrieb am 8. März 2008 um 12:32 Uhr (#)

    Das ist gut. :)

    Ich war jetzt eben mal auf der Apple-Seite. Habe ich das richtig gesehen, dass es die Entwicklungsumgebung nur für Mac OSX gibt?

  6. moritz
    schrieb am 8. März 2008 um 12:55 Uhr (#)

    hast du den artikel gelesen, den du da kommentierst?

  7. DiPi
    schrieb am 9. März 2008 um 09:26 Uhr (#)

    sehr nette Idee und schön beschrieben. Ich werde mich auch auf dem Weg machen und eine minimalistische Api für meinen IPhone schreiben – mal sehen ob es klappt:) So fern ich gelesen habe, gibt es demnächst sowieso von Apple eine SDK for free die mehr leisten kann.

  8. Marc
    schrieb am 23. März 2008 um 01:08 Uhr (#)

    wie du meinen? der SDK ist erst gerade raus mit XCode 3.1 beta, insofern wird der definitiv nicht bald ersetzt.

    was im juni kommt ist iphone fireware 2.0, dann wird der SDK vermutlich gepatcht da die features in der erst gerade releasten version vermutlich nicht drin sein werden.

  9. leu
    schrieb am 11. April 2008 um 08:27 Uhr (#)

    Ich glaub ich werde mir nur den iphone Simulator installieren. Einfach damit ich auch ein wenig mit dem iphone rumsurfen kann.

  10. namwen
    schrieb am 2. September 2008 um 15:32 Uhr (#)

    I am hoping to bring the “snowball system” apparent in the email links to a minimum. Thankyou everyone who supports this commitment.

  11. hubs
    schrieb am 25. Juni 2010 um 19:20 Uhr (#)

    Wir entwickeln nativ auf allen Plattformen inkl. Android, BlackBerry, iPhone usw. seit 8 Jahren: http://mobileman.com/de/i…pps_entwicklung.html. Das Apple SDK und Umgebung ist klar die effizienteste und benutzerfreundlichste für mobile computing.

Diesen Artikel kommentieren

Wir sind sehr an einer offenen Diskussion interessiert, behalten uns aber vor, beleidigende Kommentare sowie solche, die offensichtlich zwecks Suchmaschinenoptimierung abgegeben werden, zu editieren oder zu löschen. Mehr dazu in unseren Kommentarregeln.

  • Neuerdings auf Twitter

  • Über neuerdings.com

    Die tägliche Dosis Technik. Wir melden nicht nur das Erscheinen neuer Gadgets, sondern testen sie aus Anwendersicht.

  • Autoren