Multitasking fürs iPhone – iPhone OS 4.0

| 7 Kommentare

Ein Aufschrei geht durch die Menge. Das iPhone kriegt Multitask. Seit, ich glaube Windows 95 hält sich das Thema als Muss-Anforderung für Computer und Smartphone Systeme. Und Apple wagte sich, ein Telefon auf den Markt zu bringen, welches kein Multitasking kann. Nicht genug der Frechheit, wurde das Ding sogar ein Erfolg.

Warum aber Multitasking auf dem Smartphone? Ich persönlich war mit dem Multitasking-losen iPhone OS3.x sehr zufrieden. Gewisses Multitasking funktionierte ja durchaus. So konnte man den iPod laufen lassen, während man irgend eine andere Applikation startet. SMS, Mails und Anrufe wurden ebenfalls empfangen, ohne das die entsprechenden Applikationen im Vordergrundlaufen. Später brachte Apple sogar Notifications, welche für alle Applikationen zur Verfügung standen. So konnte eine Applikation auf ein Ereignis hinweisen. Beispiel eine neue Facebook Nachricht oder ähnliches. Wurde die Applikation Facebook dann gestartet, wurde diese Nachricht erst heruntergeladen.

Kein Multitasking aber immerhin eine Benachrichtigung.

Gelöst war das ganze mit Hintergrundprozessen die ständig laufen. Diese Hintergrundprozesse hielt Apple aber “close to the chest” sprich nur ihre Applikationen konnten sie nutzen (iPod, Installation aus Appstore, Anruf, Maileingang, etc.) Mit OS 4.0 kommen nun weitere Hintergrundprozesse hinzu welche allen Entwicklern offenstehen:

- Background Audio: Auch Musikplayer die nicht von Apple kommen können Musik im hintergrund laufen lassen. So könnten Applikationen jetzt aber auch Audio-Benachrichtigungen enthalten. Bsp. Gowalla informiert mich, wenn jemand in einen Spot eincheckt in dem ich mich befinde.

- Voice over IP: Die Anrufbenachrichtigung funktioniert nun auch bei VOIP Anrufen. Beispiel Skype. Ein Skype Anruf wird nun auch ohne gestartetes Skype empfangbar.

- Background Location: Applikationen können nun ein iPhone orten ohne das dieses die Applikation gestartet haben muss. GPS Navigation ist das offensichtlichste in dem man browsen könnte während man sich bewegt, aber die Navigations-Applikation behält stets die GPS-Lokalisierung.

- Push-Notifications/Local Notifications: Diese Funktion gabs ja wie erwähnt bereits. Allerdings funktionierte sie nur über Server-Infrastruktur. Der Facebook Server informierte Apple über eine neue Nachricht, und der Apple-Server sandte diese Benachrichtigung dann exklusiv ans iPhone. Neu ist eine lokale Benachrichtigung. Eine Applikation, Beispiel ein anderer Kalender als der offizielle vom iPhone kann nun eine Benachrichtigung bei einem Event absetzen (klassisch Meeting in 15 Minuten).

- Task Completion: Applikationen können Tasks noch abarbeiten auch wenn sie nicht mehr im Vordergrund sind. Bsp. Datei-Upload ins Web oder ähnliches.

- Fast App Switching: Hier kommen wir eigentlich zum neuen Multitasking. Applikationen können jetzt schneller gewechselt werden. Bisher hat man eine Applikation geschlossen und dann wieder geöffnet. Das ging eigentlich nicht mal so schlecht. Schneller geht es aber, wenn eine Applikation in den Schlafmodus versetzt werden kann (Klick zum Vergrössern):

Für mich sehr beruhigend, das neue Windows Phone 7 funktioniert ziemlich ähnlich. Welche Background Prozesse dort aber unterstützt werden ist noch nicht veröffentlicht.

Vorteil dieser “Multitasking” Methode gegenüber einem echten Multitasking, also Applikationen die parallel laufen können wie bei Android, ist klar die Performance Steuerung. Apple und Microsoft haben die im Hintergrund laufenden Prozesse selber definiert. Diese können also keine unberechenbaren Einfluss auf die Performance haben. Applikationen können aber schlecht geschrieben sein und somit unnötige Device-Ressourcen an sich reissen.

Für den Anwender spielt es schlussendlich keine grosse Rolle wie ich finde.

Update:

In den Kommentaren wurde gefragt wie das mit dem Schliessen resp. Wegfallen des Speicherstandes gelöst wird. Bei daringfireball.net bin ich nun über die Antwort, die genau so auch für Android gilt, gestolpert:

what Apple has unveiled for iPhone OS 4 is pretty similar to Android’s multitasking model. In both iPhone OS 4 and Android, users should never need to quit apps manually — when the system runs low on memory, it automatically quits least-recently-used background apps to free up more.

So werden Applikationen also bei Speicherknappheit automatisch geschlossen, abhängig von ihrer Benutzung.

Autor: fime

Keeping his DeLorean at 88 mph

7 Kommentare

  1. ich muss sagen, dass ich auf dem iphone das multitasking auch noch nie vermisst habe. interessant wird es sicher für applikationen wie skype, damit ich auch telefonanrufe empfangen kann ohne das die app im vordergrund laufen muss.
    wobei ich gestehen muss, ich bin noch nicht ganz hinter das multitasking konzept gekommen, den im “taskmanager” (doppel-klick auf den home button) sehe ich immer alle apps die mal offen waren. aber die wirklich immer noch laufen??? ich kann sie dann da abschiessen, aber ist ja auch erst eine beta version ;-)

  2. Ich frage mich noch immer wie die Batterieleistung meines 3GS unter 4.0 sein wird. Das ist wohl die viel entscheiderne Frage im Alltag.

  3. @roli meines Verständnisses nach siehst du die “pausierten” apps. die laufen ja nicht wirklich sondern ihr status wurde nur aufs file-system geschrieben. taskmanager in dem sinn gibt es nicht. vermutlich werden pausierte stände beim reboot gelöscht

    @rouge: klar praxis wirds zeigen. die chance das gut zu lösen ist halt bei diesem ansatz grösser als wenn du es völlig offen lässt. na gut sie hätten immer noch die qualitätskontrolle bei der applikationszulassung im app-store. aber das wäre halt massiv komplexer als ein standardisiertes set an hintergrundprozessen

  4. ich sehen eben auch nach ein reboot noch ziemlich viele apps im taskmanager, nicht nur apple eigene. aber eben ich denke dies wird wohl noch ein problem in der beta version sein.

    @rouge: ich denke nicht, dass die batterieleistung enorm abnehmen wird. das sehe ich jetzt schon beim android, egal ob 10 apps noch am laufen sind… der akku hält eh nur einen tag ;)

  5. Also gerade gelesen wie das Windows Phone macht. Auch dort kein Task Manager und kein Beenden beim Reboot. Die Steuerung wird allerdings vom Phone OS übernommen und es wird wohl die ältesten schliessen, wenn Speicher knapp wird. Für den User ist das aber völlig unsichtbar

  6. Jetzt erklärt das bitte einer Frau: was genau bringt das, ich meine jetzt im echten Leben? Schnellerer App Wechsel? (ich bin ja selber nicht die schnellste)

  7. ach ich dachte es sei klar genug auch für eine… na ja dann halt so.

    schnellerer app wechsel ja, aber auch ein wiederauffinden der applikation wie du sie aufgefunden hast. gerade bei spielen wird das immer wieder betont. oder du bist daran eine mail zu verfassen, etc.

    okay?

Hinterlasse eine Antwort

Pflichtfelder sind mit * markiert.

*


Spam Protection by WP-SpamFree

Page optimized by WP Minify WordPress Plugin