didChangeAppLifecycleState method
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:
- AppLifecycleListener, an alternative API for responding to application lifecycle changes.
Implementation
@override
void didChangeAppLifecycleState(AppLifecycleState state) {
super.didChangeAppLifecycleState(state);
if (!_enabled) {
return;
}
if (state == AppLifecycleState.hidden && !_locked) {
_backgroundLockLatencyTimer?.cancel();
_backgroundLockLatencyTimer =
Timer(widget.backgroundLockLatency, () => showLockScreen());
}
if (state == AppLifecycleState.resumed) {
_backgroundLockLatencyTimer?.cancel();
}
setState(() {
_inactive = state == AppLifecycleState.inactive;
});
}