Что такое App Standby Buckets

«Что такое App Standby Buckets» — вопрос из категории Android компоненты, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

App Standby Buckets — это механизм в Android, который классифицирует приложения по уровню их активности и влияет на ограничения фоновых процессов.

Основные бакеты:

  • Active — приложение активно используется.
  • Working set — часто используется, но не сейчас.
  • Frequent — используется периодически.
  • Rare — редко используется.
  • Restricted — приложение злоупотребляет ресурсами.

Пример проверки бакета:

val usageStatsManager = getSystemService(USAGE_STATS_SERVICE) as UsageStatsManager
val bucket = usageStatsManager.appStandbyBucket // текущий бакет приложения

Чем ниже бакет, тем строже ограничения (например, на JobScheduler, Alarms, FCM).