Windows App SDK
   HOME

TheInfoList



OR:

Windows App SDK (formerly known as Project Reunion) is a
software development kit A software development kit (SDK) is a collection of software development tools in one installable package. They facilitate the creation of applications by having a compiler, debugger and sometimes a software framework. They are normally specific t ...
(SDK) from
Microsoft Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
that provides a unified set of APIs and components that can be used to develop desktop applications for both
Windows 11 Windows 11 is a version of Microsoft's Windows NT operating system, released on October 5, 2021, as the successor to Windows 10 (2015). It is available as a free upgrade for devices running Windows 10 that meet the #System requirements, Windo ...
and
Windows 10 Windows 10 is a major release of Microsoft's Windows NT operating system. The successor to Windows 8.1, it was Software release cycle#Release to manufacturing (RTM), released to manufacturing on July 15, 2015, and later to retail on July 2 ...
version 1809 and later. The purpose of this project is to offer a decoupled implementation of capabilities which were previously tightly-coupled to the UWP app model. Windows App SDK allows native
Win32 The Windows API, informally WinAPI, is the foundational application programming interface (API) that allows a computer program to access the features of the Microsoft Windows operating system in which the program is running. Programs can acces ...
( USER32/ GDI32) or
.NET The .NET platform (pronounced as "''dot net"'') is a free and open-source, managed code, managed computer software framework for Microsoft Windows, Windows, Linux, and macOS operating systems. The project is mainly developed by Microsoft emplo ...
( WPF/ WinForms) developers alike a path forward to enhance their apps with modern features. It follows that Windows App SDK is not intended to replace the Windows SDK. By exposing a common
application programming interface An application programming interface (API) is a connection between computers or between computer programs. It is a type of software Interface (computing), interface, offering a service to other pieces of software. A document or standard that des ...
(API) primarily using the
Windows Runtime Windows Runtime (WinRT) is a platform-agnostic component and application architecture first introduced in Windows 8 and Windows Server 2012 in 2012. It is implemented in C++ and officially supports development in C++ (via C++/WinRT, C++/CX ...
(WinRT) through generated WinMD metadata, the tradeoffs which once characterized either app model are largely eliminated. NuGet packages for version 1.4 were released in August 2023 after approximately four months of development.


Features and components

While Microsoft has developed a number of new features, some of the features listed below are abstractions of functionality provided by existing APIs.


WinUI 3

Most of the investment into the decoupled UI stack has gone towards bug fixes, improvements to the debugging experience, and simplifying the window management capabilities made possible by switching from CoreWindow. An API abstracting USER32/GDI32 primitives known as AppWindow was introduced to expose a unified set of windowing capabilities and enable support for custom window controls.


WebView2

A replacement for the UWP WebView control was announced early on. This is because it was based on an unsupported browser engine. A new
Chromium Chromium is a chemical element; it has Symbol (chemistry), symbol Cr and atomic number 24. It is the first element in Group 6 element, group 6. It is a steely-grey, Luster (mineralogy), lustrous, hard, and brittle transition metal. Chromium ...
-based control, named WebView2, was developed and can be used from WinUI as well as other supported app types.


Packaging

While MSIX is included in the Windows App SDK and considered to be the recommended application packaging format, a design goal was to allow for unpackaged apps. These apps can be deployed as self-contained or framework-dependent. Support for dynamic loading of app dependencies is included for both packaged and unpackaged apps.


Graphics

DWriteCore is being developed as a decoupled and device-independent solution for high-quality text rendering. Win2D has also been made available to WinUI 3 apps.


Resource management

MRT Core allows for management of app
resource ''Resource'' refers to all the materials available in our environment which are Technology, technologically accessible, Economics, economically feasible and Culture, culturally Sustainability, sustainable and help us to satisfy our needs and want ...
s for purposes such as localization. It is a decoupled version of the resource management system from UWP.


App lifecycle

With the stable releases delivered after its initial launch, Windows App SDK now supports several app lifecycle features which previously required a considerable amount of effort for developers to implement in Win32 applications. These features include
power management Power management is a feature of some electrical appliances, especially copiers, computers, computer CPUs, computer GPUs and computer peripherals such as monitors and printers, that turns off the power or switches the system to a low-power ...
notifications, rich activation, multiple instances, and programmatic app restart.


Notifications

Support for
push notifications Push technology, also known as server Push, refers to a communication method, where the communication is initiated by a server rather than a client. This approach is different from the "pull" method where the communication is initiated by a client ...
was initially implemented as a limited-access, preview feature. However, the APIs for it have since been stabilized and push notifications can be delivered to app users. Official documentation states that access to the feature can be revoked by Microsoft at their discretion. Additionally, apps can now easily display local app notifications without the need to create an
XML Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
payload.


Widgets

Third-party integration with the Windows Widgets system in Windows 11 has been included as part of the stable release channel. Developers can design custom widgets for their app using adaptive cards and surface them on the widgets board.


See also

* DWriteCore & Win2D * Uno Platform *
Windows Driver Kit The Windows Driver Kit (WDK) is a software toolset from Microsoft that enables the development of device drivers for the Microsoft Windows platform. It includes documentation, samples, build environments, and tools for driver developers. A compl ...
(WDK)


References


External links

* * * {{DEFAULTSORT:Windows App SDK Free and open-source software Microsoft development tools Microsoft free software Software development kits Windows APIs Windows-only free software Software using the MIT license