Modifications apportées aux types de services de premier plan pour Android 15

We are making the following changes to foreground service types with Android 15.

Traitement multimédia

Type de service de premier plan à déclarer dans le fichier manifeste sous
android:foregroundServiceType
mediaProcessing
Autorisation à déclarer dans votre fichier manifeste
FOREGROUND_SERVICE_MEDIA_PROCESSING
Constante à transmettre à startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
Conditions préalables d'exécution
Aucune
Description

Service permettant d'effectuer des opérations chronophages sur des composants multimédias, comme la conversion de contenus multimédias en différents formats. Le système autorise ce service à s'exécuter pendant une durée limitée. Dans des conditions normales, cette limite de temps est de six heures sur 24. (Cette limite est partagée par tous les services de premier plan mediaProcessing d'une application.)

Votre application doit arrêter manuellement le service de traitement multimédia dans le scénario suivant:

Si le délai avant expiration est atteint, le système appelle la méthode Service.onTimeout(int, int) du service. À ce stade, le service dispose de quelques secondes pour appeler Service.stopSelf(). Si le service n'appelle pas Service.stopSelf(), une erreur ANR se produit avec le message d'erreur suivant: "Un service de premier plan de <fgs_type> ne s'est pas arrêté dans le délai avant expiration: <component_name>".

Remarque: Service.onTimeout(int, int) n'est pas disponible sur Android 14 ou version antérieure. Sur les appareils exécutant ces versions, si un service de traitement multimédia atteint la période d'expiration, le système met immédiatement en cache l'application. Pour cette raison, votre application ne doit pas attendre de recevoir une notification d'expiration. Au lieu de cela, il doit arrêter le service de premier plan ou le convertir en service en arrière-plan dès que cela est approprié.

Appareil photo

Apps that target Android 15 or higher are not allowed to launch a camera foreground service from a BOOT_COMPLETED broadcast receiver. For more information, see Restrictions on BOOT_COMPLETED broadcast receivers launching foreground services.

Synchroniser les données

以 Android 15 或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动数据同步前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制

Lecture des contenus multimédias

以 Android 15 或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动媒体播放前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制

Projection multimédia

以 Android 15 或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动媒体投影前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制

Micro

以 Android 14(API 级别 34)或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动麦克风前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制

Appel téléphonique

以 Android 15 或更高版本为目标平台的应用不得通过 BOOT_COMPLETED 广播接收器启动通话前台服务。如需了解详情,请参阅对启动前台服务的 BOOT_COMPLETED 广播接收器的限制