© blackjack/Shutterstock.com
Windows Developer
Emulation und Simulation in der App-Entwicklung

Virtuell testen

Am Ende sollte man eine App für die mobilen Systeme auf echten Geräten testen. Während der Entwicklung greift man meist auf Emulation zurück und testet die Apps auf dem Entwicklungsrechner. Das bringt neben Vorteilen auch Nachteile: Beim Aufsetzen der Entwicklungsumgebung hakt es immer wieder an der einen oder anderen Stelle mit dem Emulator. Mit ein wenig technischem Hintergrundwissen dürfte es etwas leichter gehen.

Veikko Krypczyk, Elena Bochkor


Unterschiedlichste technische Ansätze der App-Entwicklung konkurrieren um die Gunst des Entwicklers. Sie alle eint jedoch, dass man die App am Ende möglichst auf einer großen Anzahl unterschiedlicher Testgeräte überprüfen sollte. Während der eigentlichen Entwicklung verwendet man jedoch meist einen Emulator (Android) oder Simulator (iOS). Dabei werden Hard- und Software auf dem Entwicklungsrechner in einer eigenen Systemumgebung emuliert und man kann die Apps in diesem Umfeld weitgehend wie auf einem echten Gerät testen. Der größte Vorteil besteht darin, dass man während der Entwicklung kein physisches Gerät benötigt, das über USB bzw. WLAN mit dem Entwicklungsrechner kommuniziert. Arbeitet der Emulator bzw. Simulator ausreichend schnell, ist diese Vorgehensweise auch aus Performancesicht vorteilhaft. Ein Nachteil entsteht, wenn die Emulation im Schneckentempo abläuft.

Wahrscheinlich hat bereits jeder Entwickler, der mit App-Entwicklung beschäftigt ist, schon den einen oder anderen Kampf mit Emulatoren ausgefochten. Am Ende findet man meist eine Lösung; nicht selten jedoch hat man bis dahin die eine oder andere Stunde der Konfiguration der Entwicklungsumgebung geopfert. Dieser Artikel widmet sich der Emulation und Simulation von Android und iOS und sorgt damit hoffentlich für etwas mehr Hintergrundwissen, um einige typische Situationen in der Praxis beim nächsten Mal etwas souveräner anzugehen. Möchte man einen Emulator für Android unter Windows nutzen, hat man zum Beispiel die folgenden Optionen:

Image auf ARM-BasisImage mit x86-Kern und HXAM-UnterstützungIntegration von Google PlayImages für bestimmte SDK-Versionen und die genannten TechnologievariantenImage auf der Basis der Hyper-V-Emulationstechnik.

Welchen Emulator soll man nun einsetzen? Was sind die Kriterien und welche Varianten sind in manchen technischen Situationen ausgeschlossen? Nehmen wir uns die Fragen der Reihe nach vor und beginnen wir mit den Vor- und Nachteilen einer Emulation bzw. Simulation.

Vor- und Nachteile von Emulatoren und Simulatoren

Einen Emulator bzw. Simulator werden wir in allen Phasen des Entwicklungsprozesses einsetzen. Die wesentlichen Unterschiede zu einem echten Gerät sind in Tabelle 1 zusammengefasst.

KriteriumEchtes GerätEmulator/SimulatorPreiskostenintensiv; insbesondere dann, wenn man unterschiedliche Gerätetypen für das Testen benötigtkostenfrei; die Software zur Emulation/Simulation kann i. d. R. aus dem Internet heruntergeladen werden und über das gewünschte Image ...

Windows Developer
Emulation und Simulation in der App-Entwicklung

Virtuell testen

Am Ende sollte man eine App für die mobilen Systeme auf echten Geräten testen. Während der Entwicklung greift man meist auf Emulation zurück und testet die Apps auf dem Entwicklungsrechner. Das bringt neben Vorteilen auch Nachteile: Beim Aufsetzen der Entwicklungsumgebung hakt es immer wieder an der einen oder anderen Stelle mit dem Emulator. Mit ein wenig technischem Hintergrundwissen dürfte es etwas leichter gehen.

Veikko Krypczyk, Elena Bochkor


Unterschiedlichste technische Ansätze der App-Entwicklung konkurrieren um die Gunst des Entwicklers. Sie alle eint jedoch, dass man die App am Ende möglichst auf einer großen Anzahl unterschiedlicher Testgeräte überprüfen sollte. Während der eigentlichen Entwicklung verwendet man jedoch meist einen Emulator (Android) oder Simulator (iOS). Dabei werden Hard- und Software auf dem Entwicklungsrechner in einer eigenen Systemumgebung emuliert und man kann die Apps in diesem Umfeld weitgehend wie auf einem echten Gerät testen. Der größte Vorteil besteht darin, dass man während der Entwicklung kein physisches Gerät benötigt, das über USB bzw. WLAN mit dem Entwicklungsrechner kommuniziert. Arbeitet der Emulator bzw. Simulator ausreichend schnell, ist diese Vorgehensweise auch aus Performancesicht vorteilhaft. Ein Nachteil entsteht, wenn die Emulation im Schneckentempo abläuft.

Wahrscheinlich hat bereits jeder Entwickler, der mit App-Entwicklung beschäftigt ist, schon den einen oder anderen Kampf mit Emulatoren ausgefochten. Am Ende findet man meist eine Lösung; nicht selten jedoch hat man bis dahin die eine oder andere Stunde der Konfiguration der Entwicklungsumgebung geopfert. Dieser Artikel widmet sich der Emulation und Simulation von Android und iOS und sorgt damit hoffentlich für etwas mehr Hintergrundwissen, um einige typische Situationen in der Praxis beim nächsten Mal etwas souveräner anzugehen. Möchte man einen Emulator für Android unter Windows nutzen, hat man zum Beispiel die folgenden Optionen:

Image auf ARM-BasisImage mit x86-Kern und HXAM-UnterstützungIntegration von Google PlayImages für bestimmte SDK-Versionen und die genannten TechnologievariantenImage auf der Basis der Hyper-V-Emulationstechnik.

Welchen Emulator soll man nun einsetzen? Was sind die Kriterien und welche Varianten sind in manchen technischen Situationen ausgeschlossen? Nehmen wir uns die Fragen der Reihe nach vor und beginnen wir mit den Vor- und Nachteilen einer Emulation bzw. Simulation.

Vor- und Nachteile von Emulatoren und Simulatoren

Einen Emulator bzw. Simulator werden wir in allen Phasen des Entwicklungsprozesses einsetzen. Die wesentlichen Unterschiede zu einem echten Gerät sind in Tabelle 1 zusammengefasst.

KriteriumEchtes GerätEmulator/SimulatorPreiskostenintensiv; insbesondere dann, wenn man unterschiedliche Gerätetypen für das Testen benötigtkostenfrei; die Software zur Emulation/Simulation kann i. d. R. aus dem Internet heruntergeladen werden und über das gewünschte Image ...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang