La batterie est une ressource précieuse dans les appareils mobiles. Les applications qui déchargent la batterie sont désinstallées et mal notées. Ce guide présente les causes d'une consommation excessive et les techniques pour créer des applications économes en énergie.
Pourquoi la batterie est importante
Expérience utilisateur
Personne ne veut d’une application qui tue sa batterie. La frustration conduit à la désinstallation.
Avis
« Épuisement de la batterie » apparaît fréquemment dans les critiques négatives.
Restrictions du système
iOS et Android limitent les applications trop consommatrices. Terminaison en arrière-plan.
Causes d'une consommation excessive
Activité en arrière-plan
Processus exécutés lorsque l'application n'est pas utilisée.
Emplacement constant
Le GPS est l'un des plus gros consommateurs. Utiliser uniquement lorsque cela est nécessaire.
Requêtes réseau
Demandes fréquentes, surtout avec l'écran éteint.
Wake Locks
Garder le processeur ou l'écran éveillé de manière incorrecte.
Animations lourdes
Les animations complexes nécessitent un GPU. A utiliser avec parcimonie.
Traitement intensif
Calculs lourds, décodage multimédia.
### Notifications push excessives
Chaque notification réveille l'appareil.
Surveillance de la consommation
###Android
Historique de la batterie, profileur Android Studio.
###iOS
Jauge d'énergie Xcode, journal d'énergie des instruments.
Métriques
Temps CPU, activité réseau, mises à jour de localisation, réveils.
Optimisation du réseau
Traitement par lots
Regroupez les demandes ensemble au lieu de les faire une par une.
###Compression
Des données plus petites = moins de temps de transmission.
Mise en cache
Évitez les demandes répétées. Mise en cache agressive.
Prélecture intelligente
Téléchargez des données lorsque vous êtes connecté et en Wi-Fi.
Retard exponentiel
Les échecs ne doivent pas entraîner de nouvelles tentatives agressives.
Optimisation de la localisation
Précision adéquate
Utilisez la plus faible précision nécessaire. La haute précision consomme beaucoup.
Géolocalisation
Laissez le système vous avertir lorsque vous entrez dans la région. Ne sondez pas constamment.
Changements d'emplacement importants
Pour iOS, alternative efficace aux mises à jour continues.
Fournisseur d'emplacement fusionné
Pour Android, il équilibre précision et consommation.
Arrêtez-vous lorsque cela n'est pas nécessaire
Supprimez les auditeurs lorsque vous n’en avez plus besoin.
Travail en arrière-plan
###iOS
Actualisation de l'application en arrière-plan limitée. BGTaskScheduler pour les tâches.
###Android
WorkManager pour les tâches reportables. Respectez le mode Doze.
Principe général
Faites le minimum nécessaire. Complétez et dormez.
Évitez les sondages
Utilisez push/websockets au lieu d'une interrogation constante.
Wake Locks
Qu'est-ce que c'est
Empêchez le processeur ou l'écran de dormir.
Risques
Wake lock oublié = batterie déchargée.
Bonnes pratiques
Réduisez la durée, relâchez immédiatement, utilisez les délais d'attente.
###Android
Préférez JobScheduler ou WorkManager.
Animations efficaces
Accélération matérielle
Utiliser lorsque cela est possible. GPU plus efficace que CPU pour les graphiques.
Fréquence d'images
60 images par seconde, c'est fluide, mais consommateur. Réduire lorsque cela est acceptable.
Animations hors écran
Mettez en pause les animations non visibles.
Lottie
Animations vectorielles efficaces.
Rendu
Mises en page simples
Les hiérarchies profondes coûtent cher. Aplatir.
RecyclerView/Liste
Recyclez les vues. Ne recréez pas constamment.
Dépassement
Évitez de dessiner des pixels plusieurs fois. Inspectez avec des outils.
Notifications poussées
Corriger la priorité
Priorité normale pour les non urgents. Lot sur le serveur.
Petite charge utile
Moins de données = moins de traitement.
Poussée silencieuse
Pour la synchronisation en arrière-plan. Ne réveillez pas l'écran inutilement.
Médias
Codec efficace
H.265/HEVC plus efficace que H.264 dans de nombreux cas.
Résolution adéquate
Ne décodez pas le 4K en miniature.
Lecture
Pause lorsqu'il n'est pas visible. Libérez des ressources.
Capteurs
Utilisation à la demande
Enregistrez l'auditeur uniquement lorsque cela est nécessaire.
Fréquence appropriée
Fréquence la plus basse possible qui répond aux exigences.
Livraison par lots
Lectures de groupe pour moins de réveils.
Outils de diagnostic
###Android
- historien de la batterie
- Profileur Android Studio
- statistiques de batterie dumpsys
###iOS
- Organisateur d'énergie Xcode
- Instruments (journal énergétique)
- MétriqueKit
## Tests
Scénarios réels
Testez en utilisation réelle, pas seulement en laboratoire.
Divers appareils
Les performances varient selon les appareils.
Batterie faible
Comportement avec 20%, 10%, 5%.
Arrière-plan étendu
Laissez-le en arrière-plan pendant des heures. Mesure.
API système
###Android
- Mode Doze : respecter, tester
- Application Standby Buckets : comprendre les catégories
- Économiseur de batterie : adapter le comportement
###iOS
- Mode faible consommation : réduit l'activité
- Actualisation de l'application en arrière-plan : respecter les préférences
- BGTaskScheduler : pour des tâches efficaces
Mode sombre
Écrans OLED
Les pixels noirs sont éteints. Le mode sombre enregistre.
Support natif
Mettre en œuvre les directives suivantes. Le système s’adapte.
Erreurs courantes
GPS toujours activé
Oublier d'arrêter les mises à jour de localisation.
Minuterie agressive
setInterval de 1 seconde inutile.
Fuite du verrouillage de réveil
Non publié dans les exceptions ou les cas extrêmes.
Débogage en production
Journaux excessifs, fonctionnalités de débogage activées.
Conclusion
L'optimisation de la batterie relève de la responsabilité du développeur. Surveillez la consommation, minimisez l’arrière-plan, utilisez des API efficaces et testez en conditions réelles. Les utilisateurs vous remercient et restent.
##FAQ
1) Comment savoir si mon application consomme beaucoup de batterie ? Utilisez des outils de profilage. Comparez avec des applications similaires.
2) L'arrière-plan est le plus gros problème ? Souvent oui. L’activité avec l’écran éteint coûte très cher.
3) Le GPS consomme combien ? C'est l'un des plus gros consommateurs. Utiliser le minimum de précision requis.
4) Le mode sombre permet-il vraiment d'économiser la batterie ? Sur les écrans OLED, oui, de manière significative. LCD, non.
5) Comment tester la consommation de la batterie ? Utilisez des profileurs, testez sur des appareils réels, simulez une utilisation prolongée.
A lire aussi
- Optimisation des performances mobiles : Guide complet -Optimisation des performances mobiles - Exemples réels pour les débutants
- Consommation de la batterie dans les applications : comparaison avec des cas réels
- Consommation de la batterie dans les applications : comparaison et liste de contrôle
- Consommation de la batterie dans les applications : comparaison et guide rapide
- Développement natif Android : comment suivre les étapes essentielles
