Изменения в типах служб переднего плана для Android 15

我们将对 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 , запускающие службы переднего плана .