Изменения в типах служб переднего плана для Android 15
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Мы вносим следующие изменения в типы служб переднего плана в Android 15.
- Тип службы переднего плана, который нужно объявить в манифесте в разделе
-
android:foregroundServiceType
-
mediaProcessing
- Разрешение объявить в своем манифесте
-
FOREGROUND_SERVICE_MEDIA_PROCESSING
- Константа для передачи в
startForeground()
-
FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING
- Предварительные требования для выполнения
- Никто
- Описание
Сервис для выполнения трудоемких операций с медиаресурсами, таких как преобразование мультимедиа в разные форматы. Система позволяет этой службе работать ограниченное время; при нормальных обстоятельствах этот лимит времени будет составлять 6 часов из каждых 24. (Этот лимит является общим для всех служб переднего плана mediaProcessing
приложения.)
Ваше приложение должно вручную остановить службу обработки мультимедиа в следующем сценарии:
Если период тайм-аута достигнут, система вызывает метод службы 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
, запускающие службы переднего плана .
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-07-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-07-29 UTC."],[],[],null,["# Changes to foreground service types for Android 15\n\nWe are making the following changes to foreground service types with Android\n15.\n\n### Media processing\n\nForeground service type to declare in manifest under\n`android:foregroundServiceType`\n: `mediaProcessing`\n\nPermission to declare in your manifest\n: `FOREGROUND_SERVICE_MEDIA_PROCESSING`\n\nConstant to pass to `startForeground()`\n: `FOREGROUND_SERVICE_TYPE_MEDIA_PROCESSING`\n\nRuntime prerequisites\n: None\n\nDescription\n\n: Service for performing time-consuming operations on media assets, like\n converting media to different formats. The system allows this service a limited\n time to run; under normal circumstances, this time limit would be 6 hours out of\n every 24. (This limit is shared by all of an app's `mediaProcessing` foreground\n services.)\n\n: Your app should manually stop the media processing service in the following\n scenario:\n\n - When the transcoding operation finishes or reaches a failure state, have the service call [`Service.stopForeground()`](/reference/android/app/Service#stopForeground(int)) and [`Service.stopSelf()`](/reference/android/app/Service#stopSelf()) to stop the service completely.\n\n: If the timeout period is reached, the system calls the service's\n [`Service.onTimeout(int, int)`](/reference/android/app/Service#onTimeout(int,%20int)) method. At this\n time, the service has a few\n seconds to call [`Service.stopSelf()`](/reference/android/app/Service#stopSelf()). If the service does not call\n `Service.stopSelf()`, an ANR will occur with this error message: \"A\n foreground service of *\\\u003cfgs_type\\\u003e* did not stop within its\n timeout: *\\\u003ccomponent_name\\\u003e*\".\n\n **Note** : `Service.onTimeout(int, int)` is not available on Android 14\n or lower. On devices running those versions, if a media processing\n service reaches the timeout period, the system immediately caches the app.\n For this reason, your app shouldn't wait to get a timeout notification.\n Instead, it should terminate the foreground service or change it to a\n background service as soon as appropriate.\n\n### Camera\n\nApps that target Android 15 or higher are not allowed to launch a\ncamera foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Data sync\n\nApps that target Android 15 or higher are not allowed to launch a\ndata sync foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Media playback\n\nApps that target Android 15 or higher are not allowed to launch a\nmedia playback foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Media projection\n\nApps that target Android 15 or higher are not allowed to launch a\nmedia projection foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Microphone\n\nApps that target Android 14 (API level 34) or higher are not allowed to launch a\nmicrophone foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed).\n\n### Phone call\n\nApps that target Android 15 or higher are not allowed to launch a\nphone call foreground service from a `BOOT_COMPLETED` broadcast receiver.\nFor more information, see\n[Restrictions on `BOOT_COMPLETED` broadcast receivers launching foreground\nservices](/about/versions/15/behavior-changes-15#fgs-boot-completed)."]]