Перейти к содержанию

AppState

AppState может определить, находится ли приложение на переднем плане или в фоновом режиме, и уведомить вас об изменении состояния.

AppState часто используется для определения намерения и правильного поведения при обработке push-уведомлений.

Состояния приложения

  • active — приложение работает на переднем плане
  • background — Приложение работает в фоновом режиме. Пользователь находится либо:
    • в другом приложении
    • на главном экране
    • [Android] в другой Activity (даже если она была запущена вашим приложением)
  • [iOS] inactive — Это состояние, которое возникает при переходе между передним и фоновым планом, а также в периоды бездействия, такие как вход в режим многозадачности, открытие Центра уведомлений или в случае входящего вызова.

Дополнительную информацию см. в документации Apple.

Базовое использование

Чтобы увидеть текущее состояние, вы можете проверить AppState.currentState, которое будет постоянно обновляться. Однако, currentState будет null при запуске, пока AppState получает его через мост.

В этом примере будет только "Текущее состояние: активно", потому что приложение видно пользователю только в активном состоянии, а нулевое состояние будет происходить только на мгновение. Если вы хотите поэкспериментировать с кодом, мы рекомендуем использовать собственное устройство вместо встроенного предварительного просмотра.

События

change

Это событие происходит при изменении состояния приложения. Слушатель вызывается с одним из текущих значений состояния приложения.

memoryWarning

Это событие используется при необходимости бросить предупреждение о памяти или освободить ее.

focus

Получается, когда приложение получает фокус (пользователь взаимодействует с приложением).

blur

Получается, когда пользователь не активно взаимодействует с приложением. Полезно в ситуациях, когда пользователь опускает вниз ящик уведомлений. Состояние AppState не изменится, но событие blur сработает.

Методы

addEventListener()

1
2
3
4
static addEventListener(
  type: AppStateEvent,
  listener: (state: AppStateStatus) => void,
): NativeEventSubscription;

Устанавливает функцию, которая будет вызываться всякий раз, когда происходит указанный тип события на AppState. Допустимыми значениями для eventType являются перечисленные выше события. Возвращает EventSubscription.

Свойства

currentState

1
static currentState: AppStateStatus;

Комментарии