Мы вносим следующие изменения в типы служб переднего плана в Android 15.
Обработка медиа
- Тип службы переднего плана, который нужно объявить в манифесте в разделе
-
android:foregroundServiceType
-
mediaProcessing
- Разрешение объявить в своем манифесте
-
FOREGROUND_SERVICE_MEDIA_PROCESSING
- Константа для передачи в
startForeground()
-
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
- Предварительные требования для выполнения
- Никто
- Описание
Сервис для выполнения трудоемких операций с медиаресурсами, таких как преобразование мультимедиа в разные форматы. Система позволяет этой службе работать ограниченное время; при нормальных обстоятельствах этот лимит времени будет составлять 6 часов из каждых 24. (Этот лимит является общим для всех служб переднего плана
mediaProcessing
приложения.)Ваше приложение должно вручную остановить службу обработки мультимедиа в следующем сценарии:
- Когда операция перекодирования завершится или достигнет состояния сбоя, вызовите службу
Service.stopForeground()
иService.stopSelf()
чтобы полностью остановить службу.
- Когда операция перекодирования завершится или достигнет состояния сбоя, вызовите службу
Если период тайм-аута достигнут, система вызывает метод службы
Service.onTimeout(int, int)
. В это время у службы есть несколько секунд для вызоваService.stopSelf()
. Если служба не вызываетService.stopSelf()
, произойдет ANR с этим сообщением об ошибке: «Служба переднего плана <fgs_type> не остановилась в течение времени ожидания: <comComponent_name> ».Примечание .
Service.onTimeout(int, int)
недоступен на Android 14 или более ранней версии. На устройствах с этими версиями, если служба обработки мультимедиа достигает периода ожидания, система немедленно кэширует приложение. По этой причине вашему приложению не следует ждать получения уведомления о тайм-ауте. Вместо этого ему следует прекратить работу службы переднего плана или заменить ее на фоновую службу, как только это станет возможным.
Камера
Приложениям, предназначенным для Android 15 или более поздней версии, не разрешено запускать службу переднего плана камеры из приемника вещания BOOT_COMPLETED
. Дополнительные сведения см. в разделе Ограничения на широковещательные приемники BOOT_COMPLETED
, запускающие службы переднего плана .
Синхронизация данных
Приложениям, предназначенным для Android 15 или более поздней версии, не разрешено запускать службу приоритетной синхронизации данных из широковещательного приемника BOOT_COMPLETED
. Дополнительные сведения см. в разделе Ограничения на широковещательные приемники BOOT_COMPLETED
, запускающие службы переднего плана .
Воспроизведение мультимедиа
Приложениям, предназначенным для Android 15 или более поздней версии, не разрешено запускать службу приоритетного воспроизведения мультимедиа из широковещательного приемника BOOT_COMPLETED
. Дополнительные сведения см. в разделе Ограничения на широковещательные приемники BOOT_COMPLETED
, запускающие службы переднего плана .
Медиа-проекция
Приложениям, предназначенным для Android 15 или более поздней версии, не разрешено запускать службу переднего плана медиапроекции из приемника вещания BOOT_COMPLETED
. Дополнительные сведения см. в разделе Ограничения на широковещательные приемники BOOT_COMPLETED
, запускающие службы переднего плана .
Микрофон
Приложениям, предназначенным для Android 14 (уровень API 34) или выше, не разрешено запускать службу переднего плана микрофона из приемника вещания BOOT_COMPLETED
. Дополнительные сведения см. в разделе Ограничения на широковещательные приемники BOOT_COMPLETED
, запускающие службы переднего плана .
Телефонный звонок
Приложениям, предназначенным для Android 15 или более поздней версии, не разрешено запускать службу приоритетного режима телефонного звонка из широковещательного приемника BOOT_COMPLETED
. Дополнительные сведения см. в разделе Ограничения на широковещательные приемники BOOT_COMPLETED
, запускающие службы переднего плана .