|
La relâche d’iOS4 par Apple a résolu de nombreux problèmes, a ajouté plusieurs nouvelles fonctionnalités de même que la capacité d'avoir de nombreuses applications ouvertes en même temps sur l’appareil : multitâche.
Cependant, le support multitâche sur iOS4 n'est pas exactement la même chose que sur un ordinateur personnel. Alors, où est la différence et comment cela affectera l'utilisateur Media5-fone sur iOS4?
Les applications peuvent être en mode veille ou en cours d'exécution en arrière-plan :
- Sur iOS4, plusieurs applications peuvent être ouvertes en même temps. Cependant, celles qui sont en arrière-plan ne sont pas nécessairement éveillées, elles sont suspendues (en sommeil), et seules certaines applications peuvent être en cours d'exécution (par exemple des applications qui jouent de la musique pendant la navigation sur Internet, la synchronisation de l'application de messagerie sur le serveur de courriel, le service de notifications d’Apple, etc.).
Par défaut, l'IOS gère le comportement du Media5-fone et l'envoie à l'état suspendu (le sommeil). Si nous laissons cela se produire :
- L’application devrait consommer moins de batterie, car elle ne ferait rien.
- Si le Media5-fone ne faisait rien, alors il cesserait de maintenir son enregistrement au serveur/distributeur VoIP.
- Chaque fois que quelqu'un tenterait de vous appeler, votre serveur/distributeur VoIP ne serait pas en mesure de vous trouver et rejetterait l'appel en informant l'appelant que vous n’êtes pas disponible.
En tant que concepteur de logiciels VoIP, Media5 ne veut pas ce comportement. Nous avons besoin que l'application reste en vie et connectée à votre serveur/distributeur VoIP. Nos développeurs ont donc mis en place un truc non documenté pour éviter que le Media5-fone soit suspendu et qu’il continue l'exécution d’une logique d'application tant qu'il est en arrière-plan. Par conséquent:
- L'application reste en arrière-plan, elle maintient l'enregistrement actif avec le serveur/distributeur VoIP.
- Lorsque quelqu'un vous appelle, le serveur est capable de communiquer avec votre appareil, vous pouvez donc recevoir l'appel.
- L'inconvénient est que si l’application continue de s’enregistrer, cela signifie qu'elle reste connectée au réseau et consomme de l'énergie: c'est pourquoi la batterie durera moins longtemps. La même chose se passerait si vous passiez la journée à naviguer sur Internet.
iOS4 a la capacité de réveiller les applications qui sont suspendues. L’un des mécanismes disponibles est appelé notification «push». Ce mécanisme est toutefois hébergé par certains serveurs Apple via Internet et nécessite l'utilisation d'un autre serveur SIP qui agit à titre d’interface entre votre fournisseur, les serveurs d'Apple et votre application. Par conséquent, vos paramètres VoIP y sont stockés, et le trafic VoIP passe ailleurs que par le serveur de votre fournisseur SIP. Selon nous, cette solution menace votre vie privée, nous n'avons donc pas mis en œuvre un tel mécanisme.
Cette limitation affecte tous les clients de téléphones logiciels VoIP créés pour la plate-forme iOS4, ce n'est donc pas particulier au Media5-fone. Il existe plusieurs façons de la contourner, mais elle sera là jusqu'à ce qu’Apple ne supprime cette limitation.
En quelques mots : le trafic réseau a besoin d'énergie, plus de trafic signifie un drainage plus rapide de la batterie. Alors pourquoi ne pas diminuer l'utilisation du réseau? C'est ce que nous avons fait et de nouvelles options ont été ajoutées au Media5-fone:
- Activer / Désactiver l’exécution en arrière-plan : lorsqu'elle est désactivée, le Media5-fone sera en sommeil, alors il n’actualisera pas l'enregistrement. Lors de nos tests, l'application a utilisé 5 % de la batterie en 24 heures (toutefois, aucun appel entrant ne peut être reçu lorsque l’application est en arrière-plan).
- Optimisation de batterie TCP/TLS : si le serveur VoIP prend en charge le transport SIP TCP ou TLS, l’application peut être réveillée au moment où une commande SIP TCP ou TLS arrive (ce mode est disponible seulement si l'option de Maintien du lien est désactivée et si l’Intervalle d'enregistrement est fixée à 10 minutes ou plus). L'amélioration est la même que ci-dessus, jusqu'à 5 % de consommation en 24 heures.
- Intervalle d'enregistrement configurable : saisir l’intervalle d’enregistrement à une valeur élevée aura un impact significatif sur la consommation de la batterie (le serveur VoIP doit prendre en charge l’intervalle d'enregistrement configuré). Plus l’intervalle d'enregistrement est élevé, plus la batterie durera longtemps: jusqu'à 60 % moins de consommation qu'en mode normal.
- Activer/Désactiver le mode Maintien du lien sur Wi-Fi/3G: désactiver le maintien du lien permet également de réduire le trafic réseau: jusqu'à 60 % moins de consommation de la batterie qu’en mode normal.
|