didChangeAppLifecycleState method

  1. @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

@override
void didChangeAppLifecycleState(AppLifecycleState state) {
  _resetPerformanceWindow();
  if (_foreground && state != AppLifecycleState.resumed) {
    record('lifecycle', state.name);
  }
  _foreground = state == AppLifecycleState.resumed;
  if (!_foreground) {
    _generation++;
  }
  if (_foreground) {
    if (_requiresDeviceApproval) {
      unawaited(deviceRegistration.refresh());
    }
    record('lifecycle', state.name);
  }
}