Was passiert eigentlich, wenn Apps und Dienste, vom Bildschirm verschwinden, ohne geschlossen worden zu sein? Areamobile hat sich das Multitasking von Android 4 und iOS 5 angeschaut und dabei viele Gemeinsamkeiten entdeckt.
Ein Doppeltipp auf die Home-Taste öffnet bei iOS eine Leiste mit den zuletzt verwendeten Apps am unteren Rand des Displays. Man kann sie seitlich durchscrollen, direkt dorthin wechseln oder sie endgültig schließen. Wobei gar nicht sicher ist, dass die hier angezeigten Programme überhaupt im Hintergrund aktiv sind. Es handelt sich eben nicht um eine Multitasking-Leiste von iOS, sondern um eine Chronologie der Software, die der Nutzer im Laufe der Zeit geöffnet hat. Es kann also auch sein, dass er einfach nur ein Icon aus der Reihe löscht. Eines ist aber sicher: Wenn die App tatsächlich aktiv ist und Systemressourcen verbraucht, dann werden alle damit verbundenen Prozesse aus dem Speicher entfernt und zurückgesetzt.
Apple gestattet nur ganz bestimmten Prozessen das Weiterlaufen, wenn man die Home-Taste drückt und die App aus dem Sichtfeld verschwindet: Audio bei Musiksoftware wie Last.fm oder VoIP bei einer Telefonsoftware wie Skype. Es gibt insgesamt sieben von diesen Prozessen, die iOS-Entwickler für Apps verwenden können: Hintergrund-Audio, VoIP, Standortbestimmung, Push-Nachrichten, lokale Benachrichtigungen, die Vervollständigung von Aufgaben und der Wechsel zwischen Anwendungen. In jedem Fall erhält ein solcher im Hintergrund laufender Prozess einen niedrigeren Verarbeitungsstatus vom System als die gerade aktive App.
Mit diesem Multitasking-Konzept kann in der Theorie eine beliebige Anzahl von Prozessen auf dem iPhone aktiv sein. Aber in der Praxis ist der Speicher limitiert und das System erreicht irgendwann eine Belastungsgrenze. Deshalb baut Apple in iOS einen Notschalter ein: Wenn Speicher für ein weiteres Programm benötigt wird, dann werden andere Prozesse automatisch vom System beendet – nach einer abgestuften Priorisierung: Zuerst sind diejenigen dran, die sehr lange nicht mehr aktiv benutzt wurden.
Natürlich haben einige Prozesse einen besonderen Status, der sie vor dem erzwungenen digitalen Tiefschlaf bewahrt, etwa der Musikplayer, das E-Mail-Programm oder der Kalender. Auch standortbasierte Dienste genießen im iOS-System einen Sonderrang und laufen so lange im Hintergrund weiter, bis der Nutzer sie ausschaltet. Die meisten Navi-Programme haben daher eine Option für die automatische Abschaltung von GPS implementiert.
Wichtig ist dabei, dass der iPhone-Nutzer von alldem nichts mitbekommt. Apple gibt ihm kaum Möglichkeiten, Dienste gezielt abzuschalten. Alles läuft automatisch im Hintergrund.
Dass Multitasking für Google einen sehr hohen Stellenwert hat, wird schon deutlich, wenn man sich anschaut, welche Menü-Icons bei der neuesten Android-Version 4.0 Ice Cream Sandwich vorgeschrieben sind: Zurück, Home und eine Übersicht über alle zuletzt geöffneten Programme. Während Apple bei iOS diese Funktion in einer schmalen Seitenleiste versteckt, präsentiert Google sie mit einer beeindruckenden Overlay-Animation.
Was viele dabei vergessen: Auch hier handelt es sich nicht um eine Übersicht der aktiven Programme, sondern nur um eine Software-Chronik. Und genauso wie bei Apple kann man auch hier gar nicht sicher sein, dass das dort angezeigte Programm überhaupt im Hintergrund aktiv ist. Denn auch Android hat den Notschalter und benutzt ihn immer dann, wenn der Arbeitsspeicher knapp wird.
Der Nutzer soll davon aber nichts mitbekommen, daher speichert ein Android-Smartphone jedes Mal, wenn eine App den Bildschirm verlässt, die Daten und den aktuellen Status ab. Deshalb bemerkt man kaum, ob die App vor dem erneuten Öffnen noch im Speicher war oder nicht. Lediglich die Zeit zum Öffnen verlängert sich. Hier liegt der erste Unterschied im Vergleich mit Apple, denn der iPhone-Hersteller überlässt es den Entwicklern, Daten ihrer Anwendungen rechtzeitig zu speichern.
Ein weiterer großer Unterschied besteht in der zweistufigen Unterteilung von Hintergrundaktivitäten einer Software. Google unterscheidet hier zwischen Prozessen und Diensten, wobei es sich bei letzteren um die "stärkere" Aktivität handelt. Im Gegensatz zu einem Prozess ist es einem Dienst gestattet, permanent im Hintergrund zu laufen. In diesem Kontext sind die "Prozesse" von Android also mit den sieben "Prozessen" von Apple vergleichbar, während die Ausführung als "Dienst" einer Hintergrundaktivität einen herausgehobenen Status verleiht. Bei Speicherknappheit wird das System erst alle Prozesse beenden, bevor es einen Dienst terminiert. Ein terminierter Dienst kann außerdem im Hintergrund automatisch neu gestartet werden, wenn wieder genügend Ressourcen zur Verfügung stehen.
Mit diesem abgestuften Konzept bietet Google Entwicklern im Gegensatz zu Apple weitaus mehr als nur sieben Prozesse bzw. Dienste, um Aktivitäten ihrer Software im Hintergrund laufen zu lassen. So ist es etwa möglich, dass der Browser eine Website noch vollständig zu Ende lädt, auch wenn er schon aus dem Sichtfeld verschwunden ist – weil ein zum Dienst "Browser" gehöriger Prozess noch im Hintergrund ausgeführt werden kann. Der Safari-Browser des iPhone beendet dagen alle Aktivitäten, weil Apple eine solche Multitasking-Schnittstelle nicht anbietet.
Entscheidend dabei ist aber, dass diese auch beim Google-System fest definiert und eingeschränkt sind und jederzeit vom System beendet werden können. Das Multitasking-Konzept ist differenzierter, aber die Unterschiede sind nicht so groß, wie viele Android-Jünger gerne behaupten. Der Irrglaube, dass Android das "bessere" Multitasking erlaube, ist vor allem deshalb weit verbreitet, weil Google dem Nutzer mehr Kontrollmöglichkeiten in die Hand drückt. Der kann sich nicht nur anschauen, wie viel Arbeitsspeicher noch frei ist, sondern auch eine Liste mit allen aktiven Prozessen und Diensten aufrufen und sie hier sogar beenden – aber der Nutzen hält sich in sehr engen Grenzen. Es kann sogar schädlich sein und zu Instabilitäten führen, wenn man das System bei der Speicherverwaltung bevormundet. Nicht umsonst sind Task Manager von Drittanbietern bei Android mittlerweile verpönt
Bei der Präsentation von iOS 4 im Juni 2010 erklärte Steve Jobs: "Wenn Du einen Task Manager brauchst, dann hast du schon verloren". Damit hat er mal wieder Recht behalten. Auch wenn Google Entwicklern und Nutzern in Sachen Multitasking mehr Kontrollmöglichkeiten bietet, sollten letztere sich besser dem System anvertrauen. Das ist auch der Grund für das kaum vorhandene Multitasking-Management von iOS. Daraus aber zu schlussfolgern, dass Android das bessere Multitasking erlaubt, ist ein Missverständnis.
Die Kommentarfunktion ist hier leider nur für angemeldete Benutzer freigegeben.
Du bist nicht dabei?pf
Es wirkt aber als "Bonus"
> "daher ist ja symbian auch für seine wahnsinnige Performance bekannt."
Na gut, aber das hat noch viel mehr Gründe, das liegt weniger am Multitasking.
torcida
daher ist ja symbian auch für seine wahnsinnige Performance bekannt.
Unendlich viele Tasks im hintergrund laufem lassen isrt nicht wirklich Freund des Normalusers der schon beim Wort "Task-manager" Fragezeichen auf der Stirn hat.
Aber wie schon gorki sage..hier gehts um android und ios....die anderen 2 spielen in zukunft eh keine Geige
Mag ja sein aber hier werden nur Android und iOs miteinander verglichen...
Keins von beiden!!
Das beste Multitasking hat definitiv MeeGo auf dem Nokia N9!!
Selbst Symbian ist da besser als Android und iOS...
Zwei Anmerkungen zum Multitasking bei Android (aus Entwicklersich):
"Hier liegt der erste Unterschied im Vergleich mit Apple, denn der iPhone-Hersteller überlässt es den Entwicklern, Daten ihrer Anwendungen rechtzeitig zu speichern."
Auch bei Android muss der Entwickler dafür sorgen, dass seine Anwendung den aktuellen Zustand speichert. Sonst startet die Anwendung wieder bei Null.
"Das Multitasking-Konzept ist differenzierter, aber die Unterschiede sind nicht so groß, wie viele Android-Jünger gerne behaupten."
Zu den Diensten wäre noch zu sagen, dass Entwickler hier auch noch zwischen unterschiedlichen Prioritäten (Vordergund/Hintergrund) unterscheiden können. Eine Anwendung kann sowohl Dienste als auch Prozesse enthalten. Hierdurch ist das Multitasking bei Android doch sehr gut auf der Entwicklerseite zu kontrollieren.
Taskkiller, um mehr Speicher frei zu machen, sind allerdings in der Regel unnötig. Das System verwaltet das schon optimal.