We are making the following changes to foreground service types with Android 15.
Mídia em processamento
- Foreground service type to declare in manifest under
android:foregroundServiceTypemediaProcessing- 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
mediaProcessingforeground services.)Your app should manually stop the media processing service in the following scenario:
- When the transcoding operation finishes or reaches a failure state, have the
service call
Service.stopForeground()andService.stopSelf()to stop the service completely.
- When the transcoding operation finishes or reaches a failure state, have the
service call
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 callService.stopSelf(). If the service does not callService.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.
Câmera
Os apps destinados ao Android 15 ou versões mais recentes não podem iniciar um
serviço de câmera em primeiro plano em um broadcast receiver BOOT_COMPLETED.
Para mais informações, consulte
Restrições em broadcast receivers BOOT_COMPLETED que iniciam serviços em
primeiro plano.
Sincronização de dados
Os apps destinados ao Android 15 ou mais recentes não podem iniciar um
serviço em primeiro plano de sincronização de dados de um broadcast receiver BOOT_COMPLETED.
Para mais informações, consulte
Restrições em broadcast receivers BOOT_COMPLETED que iniciam serviços em
primeiro plano.
Controles de mídia
Os apps destinados ao Android 15 ou mais recente não podem iniciar um
serviço em primeiro plano de reprodução de mídia em um broadcast receiver BOOT_COMPLETED.
Para mais informações, consulte
Restrições em broadcast receivers BOOT_COMPLETED que iniciam serviços em
primeiro plano.
Projeção de mídia
Os apps destinados ao Android 15 ou mais recentes não podem iniciar um
serviço em primeiro plano de projeção de mídia em um broadcast receiver BOOT_COMPLETED.
Para mais informações, consulte
Restrições em broadcast receivers BOOT_COMPLETED que iniciam serviços em
primeiro plano.
Microfone
Apps that target Android 14 (API level 34) or higher are not allowed to launch a
microphone foreground service from a BOOT_COMPLETED broadcast receiver.
For more information, see
Restrictions on BOOT_COMPLETED broadcast receivers launching foreground
services.
Ligação telefônica
Os apps destinados ao Android 15 ou mais recentes não podem iniciar um
serviço em primeiro plano de chamada de telefone em um broadcast receiver BOOT_COMPLETED.
Para mais informações, consulte
Restrições em broadcast receivers BOOT_COMPLETED que iniciam serviços em
primeiro plano.