
iOS-Simulator
Der iOS-Simulator ist ein Programm für Apple-Computer, das ein iPhone oder iPad als Fenster auf dem Bildschirm nachbildet. Entwickler testen darin ihre Apps, ohne jedes Mal ein echtes Gerät anzuschließen.
Wer eine App für das iPhone schreibt, muss sie ständig ausprobieren. Der iOS-Simulator ist ein Programm für Mac-Computer, das dafür ein iPhone auf dem Bildschirm nachbildet. Man sieht ein Fenster in Handyform, mit Startbildschirm, Einstellungen und der App, an der man gerade arbeitet. Geklickt wird mit der Maus, getippt mit der Computertastatur. Das Programm gehört zu Xcode, der kostenlosen Entwicklungsumgebung von Apple, also der Software, mit der iPhone-Apps geschrieben werden. Der Simulator ersetzt das echte Gerät nicht vollständig, aber er ersetzt es in den meisten Momenten des Arbeitstags.
Warum Entwickler nicht am echten iPhone arbeiten
Beim Programmieren ändert man eine Zeile, startet die App neu und schaut nach. Das passiert hunderte Male pro Tag. Über ein Kabel an ein echtes iPhone dauert jeder Durchgang deutlich länger. Im Simulator startet die App in wenigen Sekunden, direkt auf demselben Rechner.
Der zweite Grund ist die Gerätevielfalt. Apple verkauft Handys mit sehr unterschiedlichen Bildschirmgrößen, dazu Tablets in mehreren Formaten. Eine App muss auf allen ordentlich aussehen. Niemand kauft dafür zwanzig Geräte. Im Simulator wechselt man das Modell in einem Menü und sieht sofort, ob ein Knopf aus dem Bild rutscht.
Dazu kommen Situationen, die man am echten Gerät kaum herstellen kann. Man kann eine andere Sprache einstellen, sehr große Schrift wählen oder tun, als wäre das Handy in Tokio. Ein häufiger Irrtum ist, dass der Simulator nur für Anfänger gedacht sei. Auch große Firmen entwickeln fast den ganzen Tag darin.
Nachbau statt Nachahmung: was im Inneren passiert
Wichtig ist der Unterschied zwischen Simulator und Emulator. Ein Emulator tut vollständig so, als wäre er andere Hardware, und rechnet jeden Befehl des fremden Chips nach. Das ist langsam. Der iOS-Simulator macht das nicht. Er führt die App direkt auf dem Prozessor des Mac aus, so schnell wie jedes andere Mac-Programm.
Möglich ist das, weil Apple für den Simulator eine eigene Fassung der iPhone-Systemsoftware bereitstellt. Diese Fassung ist für Mac-Prozessoren übersetzt. Die App wird beim Testen also nicht in der Version gebaut, die später im App Store landet, sondern in einer zweiten Version für den Simulator. Für den Entwickler ist das unsichtbar, Xcode erledigt es im Hintergrund.
Daraus folgt der Haken. Alles, was echte Hardware braucht, fehlt oder ist nur angedeutet. Die Kamera liefert kein Bild, Bluetooth funktioniert nicht, und wie schnell die App wirklich läuft, verrät der Simulator nicht: der Mac ist stärker als ein Handy. Auch Bezahlvorgänge und Push-Nachrichten verhalten sich anders. Vor der Veröffentlichung testet man deshalb immer noch auf einem echten Gerät.
Vom Werbevideo bis zum Automatiktest
Wer nie eine App programmiert, sieht den Simulator trotzdem regelmäßig. Viele Screenshots und Videos von Apps sind darin aufgenommen, weil sich das Bild sauber und ohne Spiegelungen abfilmen lässt. Auch in Tutorials auf YouTube läuft meist ein Simulator und kein echtes Handy.
In Firmen steckt er außerdem in der automatischen Qualitätskontrolle. Auf Servern laufen nach jeder Codeänderung Testprogramme, die die App im Simulator selbstständig durchklicken. Fällt ein Test durch, meldet das System den Fehler, bevor Nutzer ihn merken. Auf einem Server ließe sich kein Regal voller echter iPhones so einfach ansteuern.
Für Android gibt es ein Gegenstück, den Android-Emulator, der aber tatsächlich fremde Hardware nachrechnet und darum oft träger ist. Und wer selbst hineinschauen will, braucht keinen Programmierkurs: Xcode ist im Mac App Store kostenlos, und der Simulator startet auch ohne eigenes Projekt.