Alternate System

Lisez, partagez!

Si vous avez apprécié cet article, n'hésitez pas à le partager sur votre réseau social favori.
Bonne lecture!

IOS, explications détailler sur le Multitâches

Avant propos.

Je ne suis pas le rédacteur de cet articles.
Pour plus d’informations, veuillez voir mes notes en bas de page.

Introduction.

Depuis un certain temps déjà, je m’intérogeais sur le fonctionnement du multitâches de IOS.
Je suis un peux en guerre avec google, mais en tout cas, quoique je tapais, je ne tombais que sur les joie de fermer rapidement une applications en la faisant glicé, et autres.
Ce qui m’intéressait, moi, c’étais le fonctionnement, sous le capeaut. 😉

On à que peux d’explication sur les fonction clé d’IOS, sauf pour nous dire combien c’est simple, mais pas pourquoi ni comment c’est fait.
Cet article est intéressant, pour les Geek ou développeur qui souhaiterais ce lancer dans la création de leur applications.
Alors voici cet article, sans plus attendre pour les Geek, développeur ou tout humain intéressé par le sujet.

Article.

Au milieu des multiples changements introduits dans iOS 7, il y en a au moins un auquel personne ne s’attendait et auquel finalement bien peu de gens prêtent vraiment attention, et pourtant il s’agit d’une nouveauté majeure: il s’agit du nouveau système multitâche de l’OS.

Bien entendu, le gestionnaire de tâche a subit un très sérieux “relifting”, mais cela va bien au delà de ca. Les développeurs ont en effet reçus de nouveaux outils permettant de gérer le multitâche dans iOS.

Un peu d’histoire.

iOS: le multitâche depuis iOS 2 jusqu’à iOS 6
Il est d’abord important de souligner que l’iPhone ayant toujours été un mini-ordinateur, ce dernier a toujours supporté le multitâche. Mais jusqu’à l’iOS 4, Apple s’est toujours gardé la possibilité de gérer le système eux-même. Pourquoi?
Eh bien les raisons sont simples: pour un appareil ayant la taille et la batterie d’un Smartphone, il est très important que la puissance et l’autonomie soient conservés. Qu’auriez-vous pensé si après avoir lancé 6 applications, votre iPhone se mettait à ramer de manière significative ou si la batterie s’était vidé en 2 temps 3 mouvements parce qu’une application avait décidé de tourner inutilement en tâche de fond ?

Lors de l’introduction de iOS 4, ils ont donc ouvert le multitâche aux développeurs. Mais très timidement. Voici les possibilités qui ont été offertes “à l’époque” et qui sont encore d’actualités dans iOS 6:

Fonctions et explication détailler.

– VOIP, Audio et navigation: Ce sont les 3 types d’applications ayant eu la possibilité de pouvoir fonctionner sans restriction ou presque (Apple ayant jugé que ce sont les trois principales dont le fonctionnement ne pouvait être interrompu en pleine utilisation)
- Pour les autres types d’applications: Apple laisse aux applications une poignée de seconde lorsque l’utilisateur ferme son application pour terminer les tâches qu’il est en train de faire et ensuite sauvegarder son état. L’idée ? Mettre l’application sur “pause” afin que l’utilisateur puisse reprendre l’activité à tout moment plus tard, retrouvant son application dans l’état dans laquelle il l’a laissée, lui donnant ainsi l’illusion qu’elle n’a pas cessé de fonctionner entre temps alors que c’est le cas.
Alors, grande question: Est-ce que Apple a ouvert grand les portes de sa bergerie et permet aux développeurs de faire n’importe quoi au détriment de la batterie ou de la puissance ? La réponse est évidemment non. Ils gardent la main mise sur leur système.
Certes, de nouvelles applications seront autorisés à tourner en tâche de fond, mais elles ne pourront pas faire n’importe quoi. Voici les nouvelles possibilités offertes aux développeurs:

Background Fetch.

Le principe de cette nouvelle option est de permettre au développeur de mettre à jour son application… Lorsque l’iPhone le décide. Voici un exemple de cas typique:
Imaginons que je suis développeur d’un grand réseau social très connu. Pour le moment, lorsque je veux que les mises à jour se chargent sur l’iPhone de mon utilisateur, il faut que ce dernier ouvre l’application et fasse un “refresh”.
Dans iOS 7, les choses changent. Le développeur a la possibilité de demander à ce que son application se rafraîchisse plus souvent. La seule option qu’il a pour cette possibilité est le temps minimum qu’il faut attendre avant de tenter un rafraichissement. Si j’ai par exemple une application qui charge des vidéos publiées quotidiennement, je sais qu’il est inutile qu’elle se rafraichisse toutes les 15 minutes. Je peux donc dire “attends un jour avant de te rafraîchir”. Si on n’a pas de préférence (par exemple pour mon application de réseau social citée précédemment), on peux simplement lui signifier et Apple décide de ce délai pour vous.
Évidemment, en mettant 15 minutes en temps minimum, l’application ne se mettra pas automatiquement à jour toutes les 15 minutes. Cela veux simplement dire que dans le délai de 15 minutes, Apple ne tentera pas de mettre à jour votre application. Après ce délai, elle peux décider à tout moment de le faire. Cette décision sera prise en fonction des habitudes de l’utilisateur: si iOS détecte qu’il ouvre tous les jours mon application de réseau social à 10h, à 15h et à 20h, elle saura quand il est plus intéressant de se mettre à jour en conséquence.

Remote Push Notification Service.

La seconde possibilité offerte au développeur est le “Remote Push”. De quoi s’agit-il ? Eh bien c’est le même système que les notifications Push arrivant sur vos iPhone gérés par Apple, MAIS ces dernières seront désormais silencieuses.
L’idée est que ces notifications viennent réveiller une application afin de charger ses données. Prenons l’exemple d’une application d’un site d’actualité. Sous iOS 6, voici comment une notification Push se déroule:

– La notification est envoyée depuis les serveurs d’Apple sur votre iPhone
- La notification s’affiche sur votre iPhone
- Vous ouvrez votre application
- Les nouvelles données sont chargées afin de vous montrer l’article du site d’actualité
Sous iOS 7, voici ce qu’il sera possible de faire:
– La notification est envoyée depuis les serveurs d’Apple sur votre iPhone.
- Les nouvelles données sont chargées de manière silencieuses sur votre iPhone.
- La notification s’affiche sur votre iPhone.
– Vous ouvrez votre application , vous avez directement accès à l’application avec le nouvel article déjà pré-chargé.
Ce n’est qu’un exemple, car ce système peut s’utiliser de beaucoup d’autre manière comme par exemple le téléchargement de nouveaux podcast ou de photos. Une notification peut même être totalement invisible et fonctionner sans même que vous ne vous en aperceviez (le téléchargement d’un nouvel épisode de Podcast ne nécessite par exemple pas forcément votre intervention).
Mais aussi des restrictions…
Évidemment, une application ne peut pas faire n’importe quoi. Et l’une des restrictions imposées sur le fonctionnement en tâche de fond de ces applications est le temps. Un timer démarre en effet à chaque lancement en tâche de fond. Une application n’a que peu de temps pour mettre à jour ses données et si elle n’y arrive pas, sa mise à jour sera tout simplement interrompue.
Et si mon application à besoin de télécharger des données conséquentes ? (Vidéo, podcast) ?

Multimedia download Background.

Le nom de cette nouvelle option veux tout dire: si vous voulez faire transférer de plus grosses données à iOS 7, vous mettez ces données (vidéos / photos) dans une sorte de file d’attente. Et c’est l’OS qui déterminera par lui même quel sera le meilleur moment pour télécharger ces données. Ce moment sera surtout déterminé par la qualité du réseau, (Wifi, 4G, 3G, Edge), et la puissance de la batterie (par exemple, si votre batterie en est à 5% et que vous êtes en Edge dans une zone peu couverte, mais qu’une application de Podcasting demande à télécharger un film, iOS attendra très probablement de meilleures conditions avant de le télécharger).
L’utilisateur garde toujours la main

Conclusion.

Vous gardez la main mise sur les applications étant autorisées à tourner en tâche de fond, mais aussi sur celles étant autorisées à accéder au réseau cellulaire. Vous évitez ainsi toute mauvaise surprise. Enfin, toutes les applications ont besoin d’être adaptées. Une application sous iOS 6 ne fonctionnera pas dans le nouveau système de tâche de fond de iOS 7 sans une intervention du développeur. Cette manipulation est cependant très simple et pourra se faire en l’ajout de 3 lignes de codes pour la plupart des applications.

Notes et conclusion personnel.

Je ne suis pas le rédacteur de cet article.
J’ai légèrement modifier l’articles, en corrigeant quelques détails ultra-mineur, en rajoutant notamment des ponctuation et en corrigeant deux ou trois fautes orthographique, pas que je n’en face pas moi même, mais je souhaite toujours apporté une expérience de lecture agréable.

Si vous désirer lire l’articles original, écrit par l’utilisateurs Alex, le 13 juin 2013 sur le site de Belgium iPhone, cliquez-ici.

Votre commentaire

  Inscription  
Me notifier des

Copyright Michaël Lurkin 2005-2019. Tous droits réservés.

Michaël Lurkin est né le 26 décembre 1988. Passionné par l'informatique, la lecture, la musique en écoute et en création, il est également programmeur, et développe des solutions de Webmastering.
Pour plus d'informations sur l'auteur, cliquez ici pour en savoir d'avantage.
L'interface de ce site est optimisé pour les ordinateurs pc ainsi que pour tout les terminaux mobile.