윈도우 앱 SDK

위키백과, 우리 모두의 백과사전.

윈도우 앱 SDK
다른 이름프로젝트 리유니언
개발자마이크로소프트
발표일2021년 3월 29일
안정화 버전
1.4.5[1] 위키데이터에서 편집하기 / 2024년 2월 14일
미리보기 버전
1.5-preview1[2] 위키데이터에서 편집하기 / 2024년 2월 14일
저장소
프로그래밍 언어C++
운영 체제윈도우 11, 윈도우 10 버전 1809 이상
플랫폼x86-64, ARM64, IA-32
종류API
라이선스MIT 허가서
웹사이트learn.microsoft.com/windows/apps/windows-app-sdk/ 위키데이터에서 편집하기

윈도우 앱 SDK(Windows App SDK, 이전의 프로젝트 리유니언(Project Reunion))[3]는 윈도우 11 및 윈도우 10 버전 1809 이상 용 데스크톱 애플리케이션을 개발하는 데 사용할 수 있는 통합 API 및 구성 요소 세트를 제공하는 마이크로소프트소프트웨어 개발 키트 (SDK)이다. 이 프로젝트의 목적은 이전에 UWP 앱 모델에 긴밀하게 결합되었던 기능의 분리된 구현을 제공하는 것이다.[4] 윈도우 앱 SDK는 네이티브 Win32 (USER32/GDI32)와 .NET (WPF/WinForms) 개발자 모두 최신 기능으로 앱을 향상시킬 수 있는 경로를 제공한다.[4]

따라서 윈도우 앱 SDK는 윈도우 SDK를 대체할 의도가 없다.[4] 생성된 WinMD 메타데이터를 통해 주로 Windows 런타임 (WinRT)을 사용하는 공통 API를 노출함으로써 한때 두 앱 모델 중 하나를 특징지었던 점이 대부분 제거되었다. 버전 1.4용 NuGet 패키지는 약 4개월 간의 개발 끝에 2023년 8월에 출시되었다.[5]

기능 및 구성 요소[편집]

마이크로소프트는 여러 가지 새로운 기능을 개발했지만 아래 나열된 기능 중 일부는 기존 API에서 제공하는 기능을 추상화한 것이다.[4]

WinUI 3[편집]

분리된 UI 스택[6]에 대한 대부분의 투자는[7] 버그 수정, 디버깅 환경 개선, CoreWindow에서 전환하여 가능한 창 관리 기능 단순화 등으로 이용되었다. AppWindow로 알려진 USER32/GDI32 프리미티브를 추상화하는 API는[8] 통합된 창 기능 세트를 노출하고 사용자 정의 윈도우 컨트롤을 지원할 수 있도록 하기 위해 도입되었다.

WebView2[편집]

UWP WebView 컨트롤의 대체품이 일찍 발표되었다.[9] 이는 지원되지 않는 브라우저 엔진을 기반으로 했기 때문이다.[10] WebView2라는 새로운 크로미움 기반 컨트롤이 개발되었으며 WinUI 및 기타 지원되는 앱 유형에서 사용할 수 있다.

패키징[편집]

MSIX는 윈도우 앱 SDK에 포함되어 있으며 권장되는 애플리케이션 패키징 형식으로 간주되지만,[11][12] 디자인 목표는 패키징되지 않은 앱을 허용하는 것이었다. 이러한 앱은 자체 포함 또는 프레임워크 종속형으로 배포될 수 있다. 패키지된 앱과 패키지되지 않은 앱 모두에 대해 앱 종속성의 동적 로드 지원이 포함된다.[13]

그래픽[편집]

DWriteCore는 고품질 텍스트 렌더링을 위한 분리되고 장치 독립적인 솔루션으로 개발되고 있다.[14] Win2D는 WinUI 3 앱에서도 사용할 수 있게 되었다.[15]

리소스 관리[편집]

MRT Core를 사용 하면 현지화 등의 목적을 위한 앱 리소스를 관리할 수 있다. UWP에서 리소스 관리 시스템이 분리된 버전이다.[16]

앱 수명 주기[편집]

초기 출시 이후 안정적인 릴리스가 제공되면서 윈도우 앱 SDK는 이전에 개발자가 Win32 애플리케이션에서 구현하는 데 상당한 노력이 필요했던 여러 앱 수명 주기 기능을 지원한다. 이러한 기능에는 전원 관리 알림, 리치 활성화, 다중 인스턴스 및 프로그래밍 방식 앱 다시 시작이 포함된다.[17]

알림[편집]

푸시 알림에 대한 지원은 처음에는 제한된 액세스인 미리 보기 기능으로 구현되었다.[18] 그러나 이후 API가 안정화되어 앱 사용자에게 푸시 알림을 전달할 수 있다. 공식 문서에는 마이크로소프트의 재량에 따라 이 기능에 대한 액세스가 취소될 수 있다고 명시되어 있다.[18][19] 또한 이제 앱은 XML 페이로드를 생성할 필요 없이 로컬 앱 알림을 쉽게 표시할 수 있다.[20]

위젯[편집]

윈도우 11의 윈도우 위젯 시스템과의 타사 통합이 안정 릴리스 채널의 일부로 포함되었다.[21] 개발자는 적응형 카드[22]를 사용하여 앱에 대한 맞춤형 위젯을 디자인하고 위젯 보드에 표시할 수 있다.[23]

같이 보기[편집]

각주[편집]

  1. “Release 1.4.5”. 2024년 2월 14일. 2024년 2월 20일에 확인함. 
  2. https://github.com/microsoft/WindowsAppSDK/releases/tag/v1.5.0-preview1; 확인한 날짜: 2024년 3월 3일; 출판 날짜: 2024년 2월 14일.
  3. Ramel, David (2021년 6월 24일). “Windows 11 Development: Open Ecosystem Store, Project Reunion Rebrand and More”. 《Visual Studio Magazine》. 2021년 10월 11일에 확인함. 
  4. 《Windows App SDK - Calling all Windows developers!》, Microsoft, 2023년 5월 25일, 2023년 5월 26일에 확인함 
  5. “Microsoft.WindowsAppSDK 1.4.230822000”. 《nuget.org》 (영어). 2023년 9월 11일에 확인함. 
  6. Karl-Bridge-Microsoft (2023년 3월 13일). “Windows UI Library (WinUI) - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  7. “Release v1.3.0 · microsoft/WindowsAppSDK”. 《GitHub》 (영어). 2023년 5월 26일에 확인함. 
  8. “Discussion #370: Announcement: Proposed approach for windowing in Project Reunion”. 《GitHub. 2022년 4월 19일에 확인함. 
  9. Blog, Microsoft Edge; Team, Microsoft Edge (2020년 10월 19일). “Announcing Microsoft Edge WebView2 General Availability”. 《Microsoft Edge Blog》 (미국 영어). 2023년 5월 26일에 확인함. 
  10. “New Microsoft Edge to replace Microsoft Edge Legacy with April’s Windows 10 Update Tuesday release”. 《TECHCOMMUNITY.MICROSOFT.COM》 (영어). 2021년 2월 10일. 2023년 5월 26일에 확인함. 
  11. dianmsft (2021년 12월 30일). “What is MSIX? - MSIX”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  12. stevewhims (2023년 3월 3일). “MSIX framework packages and dynamic dependencies - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  13. stevewhims (2023년 4월 19일). “Use the Windows App SDK runtime for apps packaged with external location or unpackaged - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  14. stevewhims (2022년 2월 24일). “DWriteCore (Windows App SDK) - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  15. stevewhims (2023년 5월 25일). “Win2D - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  16. hickeys (2023년 3월 13일). “Manage resources MRT Core (Windows App SDK) - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  17. hickeys (2023년 1월 31일). “App lifecycle and system services - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  18. hickeys (2023년 3월 16일). “Push notifications overview - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  19. hickeys (2022년 6월 3일). “Notifications design basics - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  20. vaheeshta (2022년 7월 12일). “App notifications overview - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  21. drewbatgit (2023년 3월 9일). “Widget providers - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  22. drewbatgit (2022년 11월 10일). “Create a widget template with the Adaptive Cards Designer - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 
  23. drewbatgit (2023년 3월 9일). “Windows Widgets - Windows apps”. 《learn.microsoft.com》 (미국 영어). 2023년 5월 26일에 확인함. 

외부 링크[편집]