Pourquoi WeChat continue-t-il de fonctionner en arrière-plan sur mon smartphone Android, provoquant des avertissements du système d’exploitation, alors qu’aucune autre application ne le fait, et que fait-il ?


Parce qu'il dispose de permissions et de récepteurs qui le laissent fonctionner en arrière-plan. Décomposons-les:

  1. BOOT_COMPLETED - ce récepteur enverra une diffusion aux apps qui le demandent. Cela signifie essentiellement qu'une app peut démarrer au démarrage (en arrière-plan) sans que vous l'ouvriez réellement.
  2. CONNECTIVITY_CHANGE - ce récepteur enverra à nouveau une diffusion aux apps qui le demandent. De cette façon, les apps qui le demandent sauront que l'état du réseau a changé. Cela peut également être la raison pour laquelle de nombreux vieux smartphones bas de gamme sont en retard lorsque le réseau est allumé. Combiné à l'option de synchronisation automatique, ce récepteur peut "tuer" votre téléphone, selon les applications que vous avez. Habituellement, les apps sociales comme WeChat font un usage intensif de ce récepteur.
  3. WAKE_LOCK - cette permission permet à une app de maintenir le téléphone en état de veille, l'empêchant de passer en état de "sommeil profond". Les applications sociales offensives utiliseront probablement cette permission de manière contraire à l'éthique (collecte de diverses données dont vous pourriez vous moquer, etc. Les applications mal écrites peuvent également utiliser cette autorisation sans raison réelle. De plus, l'utilisation inhabituelle de cette permission peut déclencher les notifications du système Android concernant la décharge de la batterie.

Que fait WeChat ? Eh bien, comme je n'ai jamais utilisé WeChat, ma meilleure supposition est qu'il exécute un service d'arrière-plan pour s'assurer que les notifications ou une sorte de sa fonctionnalité est fiable, même sur les téléphones avec ou sans Google Play Services.

Une option est d'explorer les paramètres de l'application et de désactiver les fonctionnalités qui drainent la batterie ou causent des wakelocks. Les notifications en font partie ; désactivez-les ou réduisez-les si possible. Toutes sortes de sons provoquent la tenue d'un wakelock ; désactivez ou réduisez les sons cosmétiques, en particulier les sons qui sont joués assez souvent.


En fin de compte, vous pouvez essayer de vider le cache et/ou les données de l'app pour repartir à zéro. Cela pourrait corriger les bugs dus à un cache ancien/incorrect. N'oubliez pas non plus de maintenir vos apps à jour.

Il ne faut pas oublier de mettre les apps à jour.