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

Nous apportons les modifications suivantes aux types de services de premier plan avec Android 15.

Traitement multimédia

Foreground service type to declare in manifest under
android:foregroundServiceType
mediaProcessing
Permission to declare in your manifest
FOREGROUND_SERVICE_MEDIA_PROCESSING
Constant to pass to startForeground()
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
Runtime prerequisites
None
Description

Service for performing time-consuming operations on media assets, like converting media to different formats. The system allows this service a limited time to run; under normal circumstances, this time limit would be 6 hours out of every 24. (This limit is shared by all of an app's mediaProcessing foreground services.)

Your app should manually stop the media processing service in the following scenario:

If the timeout period is reached, the system calls the service's Service.onTimeout(int, int) method. At this time, the service has a few seconds to call Service.stopSelf(). If the service does not call Service.stopSelf(), an ANR will occur with this error message: "A foreground service of <fgs_type> did not stop within its timeout: <component_name>".

Note: Service.onTimeout(int, int) is not available on Android 14 or lower. On devices running those versions, if a media processing service reaches the timeout period, the system immediately caches the app. For this reason, your app shouldn't wait to get a timeout notification. Instead, it should terminate the foreground service or change it to a background service as soon as appropriate.

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

Les applications qui ciblent Android 15 ou version ultérieure ne sont pas autorisées à lancer un service de premier plan de synchronisation des données à partir d'un broadcast receiver BOOT_COMPLETED. Pour en savoir plus, consultez la section Restrictions concernant les broadcast receivers BOOT_COMPLETED qui lancent des services de premier plan.

Lecture des contenus multimédias

Les applications qui ciblent Android 15 ou version ultérieure ne sont pas autorisées à lancer un service de premier plan de lecture multimédia à partir d'un broadcast receiver BOOT_COMPLETED. Pour en savoir plus, consultez la section Restrictions concernant les broadcast receivers BOOT_COMPLETED qui lancent des services de premier plan.

Projection multimédia

Les applications qui ciblent Android 15 ou version ultérieure ne sont pas autorisées à lancer un service de premier plan de projection multimédia à partir d'un broadcast receiver BOOT_COMPLETED. Pour en savoir plus, consultez la section Restrictions concernant les broadcast receivers BOOT_COMPLETED qui lancent des services de premier plan.

Micro

Les applications qui ciblent Android 14 (niveau d'API 34) ou version ultérieure ne sont pas autorisées à lancer un service de premier plan du micro à partir d'un broadcast receiver BOOT_COMPLETED. Pour en savoir plus, consultez la section Restrictions concernant les broadcast receivers BOOT_COMPLETED qui lancent des services de premier plan.

Appel téléphonique

Les applications qui ciblent Android 15 ou version ultérieure ne sont pas autorisées à lancer un service de premier plan d'appel téléphonique à partir d'un broadcast receiver BOOT_COMPLETED. Pour en savoir plus, consultez la section Restrictions concernant les broadcast receivers BOOT_COMPLETED qui lancent des services de premier plan.