Back to results for “App Lifecycle”
.NET MAUI › Advanced & Enterprise

How do you handle app lifecycle events (start, sleep, resume) in MAUI?

Advanced

Answer

Handle Window lifecycle events—Created, Activated, Deactivated, Stopped, Resumed, Destroying—overridden on the Window or subscribed via App. Use Stopped/Deactivated to persist state and release resources, and Resumed to refresh data or reconnect. For platform specifics, use lifecycle events in ConfigureLifecycleEvents.
protected override Window CreateWindow(IActivationState? state)
{
    var window = base.CreateWindow(state);
    window.Stopped  += (s, e) => SaveState();
    window.Resumed  += (s, e) => RefreshData();
    return window;
}
Real-world example A form auto-saves a draft when the app is backgrounded and reloads it on resume so users never lose input.

Common follow-ups: Which event fires on backgrounding? | What is ConfigureLifecycleEvents?