Share via


Windows SDK 앱 수명 주기

이 문서에서는 Windows 앱 SDK 데스크톱 앱의 수명 주기 관리에 대한 개요를 제공합니다.

앱 수명 주기 개요

Windows 앱 SDK 앱의 애플리케이션 수명 주기는 UWP 앱과 동일하지 않습니다. Windows 앱 SDK 앱의 수명 주기는 다른 .NET 및 Win32 데스크톱 앱과 비슷합니다. UWP 앱과 같은 Windows 앱 SDK 앱이 시작되고 중지됩니다. 실행 중이거나 실행되지 않습니다. 그러나 UWP 앱과 달리 일시 중단 및 다시 시작은 불가능합니다. 창 수준에서 앱은 Windows가 활성화되고 비활성화될 때 반응하도록 이벤트를 구독할 수 있습니다.

Microsoft.UI.Xaml.Application 수명 주기

Application 개체는 Windows 앱 SDK 앱의 기본 진입점입니다. UWP 애플리케이션 클래스와 비슷하지만 몇 가지 중요한 차이점이 있습니다. 개체는 Application Windows 앱 SDK 프레임워크에서 만들어지고 속성에서 Microsoft.UI.Xaml.Application.Current 액세스할 수 있습니다.

Application Windows 앱 SDK 클래스에는 앱이 시작될 때 호출되는 하나의 수명 주기 메서드인 OnLaunched만 있습니다. 이 OnLaunched 메서드는 앱의 기본 창을 만들고 표시하는 역할을 담당합니다. 또한 이 OnLaunched 메서드는 Windows 앱 SDK 프레임워크를 초기화하고 앱을 시작하는 역할을 담당합니다. 새 Windows 앱 SDK 앱을 만들면 메서드가 OnLaunched 자동으로 생성됩니다.

이에 반해 UWP Application 클래스는 OnLaunched, OnActivated, OnBackgroundActivated 등 여러 가지 활성화 관련 라이프사이클 방식이 있습니다. 이 OnActivated 앱이 활성화될 때 메서드와 OnBackgroundActivated 메서드가 호출됩니다. 이 OnActivated 메서드는 사용자가 앱을 활성화할 때 호출되고 OnBackgroundActivated 시스템에서 앱을 활성화할 때 메서드가 호출됩니다.

UWP의 Application 클래스에는 일시 중지, 재개, 입력 배경, 탈퇴 배경 등의 여러 라이프 사이클 이벤트도 있습니다. 이 Suspending 이벤트는 앱이 일시 중단될 때 발생하며 앱이 Resuming 다시 시작될 때 이벤트가 발생합니다. 이 EnteredBackground 이벤트는 앱이 백그라운드로 들어갈 때 발생하며 LeavingBackground 앱이 백그라운드에서 나가면 이벤트가 발생합니다. UWP 수명 주기 이벤트에 대한 전체 설명은 Windows 10 UWP 앱 수명 주기를 참조 하세요.

UWP 앱을 Windows 앱 SDK 마이그레이션하는 경우 애플리케이션 수명 주기 기능 마이그레이션 가이드를 사용하여 UWP와 Windows 앱 SDK 앱 수명 주기 간의 차이점을 이해할 수 있습니다.

Microsoft.UI.Xaml.Window 수명 주기

Windows 앱 SDK Window 개체에는 몇 가지 수명 주기 이벤트도 Window.Activated 있습니다 Window.Closed.

Window.Activated

활성화된 이벤트는 시스템에서 창을 활성화하거나 비활성화할 때 발생합니다. 앱은 WindowActivatedEventArgs 매개 변수의 WindowActivationState 속성을 검사 창 활성화의 상태 확인할 수 있습니다. 이 이벤트는 창을 최소화하거나 최대화할 때를 포함하여 창이 활성화되거나 비활성화될 때마다 발생합니다.

창 닫기

윈도우가 닫히면 Closed 이벤트가 발생합니다. 닫을 마지막 창인 경우 일반적으로 앱의 MainWindow는 애플리케이션이 종료됩니다. Windows App SDK에서 Application 개체에 의해 제기되는 Suspending 이벤트가 없으므로 메인 윈도우의 Closed 이벤트를 사용하여 애플리케이션 상태를 저장하고 관리되는 리소스를 정리해야 합니다.

참고 항목

앱 수명 주기 및 시스템 서비스

UWP 앱 수명 주기