Gérer l'arrêt initié par l'utilisateur des applications exécutant des services de premier plan

À partir d'Android 13 (niveau d'API 33), les utilisateurs peuvent suivre un workflow depuis le volet des notifications pour arrêter une application qui exécute des services de premier plan, quelle que soit la version du SDK cible de cette application. Cette affordance, appelée Gestionnaire des tâches, affiche la liste des applications qui exécutent actuellement un service de premier plan.

En bas du panneau des notifications, un bouton indique le nombre d'applications en cours d'exécution en arrière-plan. Lorsque vous appuyez sur ce bouton, une boîte de dialogue s'affiche et liste les noms de différentes applications. Le bouton "Arrêter" se trouve à droite de chaque application.
Figure 1. Workflow du Gestionnaire des tâches sur les appareils équipés d'Android 13 ou version ultérieure.

Cette liste est intitulée Applications actives. Un bouton Arrêter s'affiche à côté de chaque application. La figure 1 illustre le workflow du Gestionnaire des tâches sur un appareil équipé d'Android 13.

Lorsque l'utilisateur appuie sur le bouton Arrêter à côté de votre application dans le Gestionnaire des tâches, les actions suivantes se produisent :

  • Le système supprime votre application de la mémoire. Par conséquent, l'intégralité de votre application s'arrête, et pas seulement le service de premier plan en cours d'exécution.
  • Le système supprime la pile d'activités "Retour" de votre application.
  • La lecture de tout contenu multimédia s'arrête.
  • La notification associée au service de premier plan est supprimée.
  • Votre application reste dans l'historique.
  • Les jobs planifiés s'exécutent à l'heure prévue.
  • Les alarmes se déclenchent à l'heure ou dans la période programmée.

Pour vérifier que votre application se comporte comme prévu pendant et après l'arrêt de l'application par un utilisateur, exécutez la commande ADB suivante dans une fenêtre de terminal :

adb shell cmd activity stop-app PACKAGE_NAME