De nos jours, les utilisateurs comptent sur leurs appareils mobiles pour pratiquement tout, de l'envoi d'e-mails et de la gestion des finances à la diffusion de vidéos et de jeux vidéo. Pour être utiles, la plupart des applications ont besoin de données, d'images et d'autres contenus multimédias provenant de services distants. N'oubliez pas que votre application n'est qu'une parmi les nombreuses applications de l'appareil de l'utilisateur, qui se disputent toutes les ressources réseau. Si elle est mal gérée, cela peut avoir un impact négatif et important sur les performances de la batterie et utiliser inutilement la bande passante réseau limitée de l'utilisateur.
À partir d'Android 8.0, plusieurs mises à jour ont été introduites dans l'OS pour préserver la batterie, l'expérience utilisateur et l'état du système. Toutefois, en tant que développeur, vous pouvez également prendre en compte d'autres considérations, stratégies et modèles. Les requêtes que votre application envoie au réseau peuvent être une cause majeure d'épuisement de la batterie, car elles reposent sur les radios cellulaires et Wi-Fi qui consomment beaucoup d'énergie.
Ce guide aborde les sujets suivants:
- Comment le modèle de connectivité de votre application interagit avec la machine d'état de la radio sans fil.
- Utiliser des techniques pour minimiser l'impact de votre connexion de données
- Résoudre les problèmes de lenteur de connexion
- Exécuter des tâches en arrière-plan uniquement dans des conditions spécifiques, par exemple lorsque l'appareil est en charge ou connecté au Wi-Fi.
- Comment suivre l'utilisation de la batterie de votre application au fil du temps
Enfin, vous découvrirez trois grandes catégories de mises à jour : les mises à jour initiées par l'utilisateur, les mises à jour initiées par l'application et les mises à jour initiées par le serveur, avec des outils et des techniques permettant de maximiser l'efficacité de chaque catégorie.
En fin de compte, c'est notre responsabilité en tant que communauté de développeurs de fournir la meilleure expérience d'application à nos utilisateurs.