didChangeAppLifecycleState method

  1. @protected
  2. @override
void didChangeAppLifecycleState(
  1. AppLifecycleState state
)
override

Called when the system puts the app in the background or returns the app to the foreground.

An example of implementing this method is provided in the class-level documentation for the WidgetsBindingObserver class.

This method exposes notifications from SystemChannels.lifecycle.

See also:

Implementation

@protected
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
  if (_disposed) return;

  final isResumed = state == AppLifecycleState.resumed;
  if (_active == isResumed) return;

  _active = isResumed;

  if (_active) {
    _cancelPauseTimer();
    _paused = false;
    foreground();
    _tryRun();
  } else {
    background();
    _schedulePause();
  }
}