Versionshinweise zum Vorschaukanal für das Windows App SDK 1.2

Wichtig

Der Vorschaukanal wird für die Verwendung in Produktionsumgebungen nicht unterstützt, und Apps, die die Vorschaureleases verwenden, können nicht im Microsoft Store veröffentlicht werden.

Der Vorschaukanal enthält Versionen des Windows App SDK mit Features des Vorschaukanals in späten Entwicklungsphasen. Vorschauversionen enthalten keine experimentellen Features und APIs, können bis zum nächsten stabilen Release jedoch wichtigen Änderungen unterliegen.

Wichtige Links:

Neuestes Vorschaukanal-Release:

Release des neuesten stabilen Kanals:

Version 1.2 Vorschau 2 (1.2.0-preview2)

Das ist das neueste Release des Vorschaukanals für Version 1.2.

In einer vorhandenen Windows App SDK 1.1-App (aus dem stabilen Kanal) können Sie Ihr NuGet-Paket auf 1.2.0-preview2 aktualisieren (weitere Informationen finden Sie im Abschnitt Aktualisieren eines Pakets in Installieren und Verwalten von Paketen in Visual Studio mit dem NuGet-Paket-Manager).

Die aktualisierten Runtime- und MSIX-Pakete finden Sie unter Neueste Windows App SDK-Downloads.

Wichtig

Visual Studio 2019 und .NET 5 werden für das Kompilieren von C#-Apps nicht mehr unterstützt (siehe Windows App SDK 1.2 moving to C# WinRT 2.0). Sie benötigen Visual Studio 2022 und eine der folgenden .NET SDK-Versionen: 6.0.401 (oder höher), 6.0.304, 6.0.109.

Zum Aktualisieren Ihrer .NET SDK-Version installieren Sie die neueste Version von Visual Studio 2022, oder besuchen Sie die Download-Website für .NET. Wenn Sie Ihr NuGet-Paket ohne die erforderliche .NET SDK-Version aktualisieren, wird ein Fehler wie dieser angezeigt: Diese Version von WindowsAppSDK erfordert .NET 6 oder höher und WinRT.Runtime.dll Version 2.0 oder höher. Um das Projekt von .NET 5.0 auf .NET 6.0 zu aktualisieren, öffnen Sie die Projektdatei, und ändern Sie „TargetFramework“ zu net6.0 und „Zielbetriebssystemversion“ in den entsprechenden Wert (z. B. net6.0-windows10.0.19041.0).

Widgets von Drittanbietern in Windows

Das Widgets-Board wurde erstmals in Windows 11 eingeführt und war auf die Anzeige von Erstanbieter-Widgets beschränkt. Widgets sind kleine UI-Container, die Text und Bilder auf dem Widgets-Board anzeigen, und sind mit einer auf dem Gerät installierten App verknüpft. Mit dem Windows App SDK können Drittanbieterentwickler*innen jetzt Widgets für Ihre gepackten Win32-Apps erstellen und diese lokal auf dem Widgets-Board unter Windows 11 testen.

Weitere Informationen zu Widgets finden Sie in der Übersicht über Widgets.

Zum Einstieg in die Entwicklung von Widgets für Ihre App finden Sie in der Dokumentation zur Entwicklung durch Widgetanbieter und den Grundlagen des Widgetdesigns Informationen zu Voraussetzungen sowie Anleitungen und Best Practices.

Zu den Voraussetzungen für dieses Release gehören:

  • Der Entwicklermodus muss auf dem Entwicklungscomputer aktiviert sein.
  • Auf dem Entwicklungscomputer wird eine Windows-Version aus dem Dev-Kanal des Windows Insider Program (WIP) mit Widgets-Board-Version 521.20060.1205.0 oder höher ausgeführt.

Bekannte Einschränkungen beim Entwickeln von Widgets

  • Widgets von Drittanbietern können nur lokal auf Geräten getestet werden, die für diese Vorschauversion bei WIP registriert sind. In Windows App SDK 1.2.0 können Benutzer von Einzelhandelsversionen von Windows über die vom Microsoft Store ausgelieferten Versionen Ihrer App mit dem Erwerb von 3P-Widgets beginnen.
  • Widgets können nur für gepackte Win32-Apps erstellt werden. Die Unterstützung für Widgets für progressive Web-Apps (PWA) ist im Rahmen von Microsoft Edge 108 geplant.

Kürzen für Apps, die mit .NET entwickelt wurden

.NET-Entwickler können WinAppSDK-Apps jetzt in gekürzter Form veröffentlichen. Mit CsWinRT 2.0 können die in WinAppSDK verteilten C#/WinRT-Projektionen jetzt gekürzt werden. Die Veröffentlichung Ihrer App in gekürztem Zustand kann den Speicherplatzbedarf Ihrer App verringern, indem nicht verwendeter Code aus kürzungsfähigen Binärdateien entfernt wird. Bei Apps kann auch eine Verbesserung der Startleistung festgestellt werden. Bei einer einfachen „Hallo Welt“-App haben wir eine Verbesserung von ca. 80 % beim Datenträgerspeicherplatz und eine Verbesserung von ca. 7 % bei der Startleistung festgestellt, wenn die App gekürzt veröffentlicht wurde. Beim dem WinUI-Katalog haben wir eine Verbesserung des Speicherplatzbedarfs von ca. 45 % festgestellt.

Weitere Informationen zum Aktivieren der Kürzung, Einschränkungen beim Kürzen (z. B. Reflektion für kürzungsfähige Typen) und Kürzen von Warnungen finden Sie unter Kürzen eigenständiger Bereitstellungen und ausführbarer Dateien. Entwickler*innen sollten ihre Apps nach dem Kürzen gründlich testen, um sicherzustellen, dass alles wie erwartet funktioniert. Weitere Informationen finden Sie im GitHub-Issue #2478.

DisplayInformation

Win32-Apps können jetzt High Dynamic Range (HDR) über die DisplayInformation-Klasse in WinAppSDK unterstützen. Mit der DisplayInformation-Klasse können Sie displaybezogene Informationen für eine Anwendungsansicht überwachen. Dies umfasst Ereignisse, mit denen Clients Änderungen an der Anwendungsansicht überwachen können, die sich darauf auswirken, auf welchen Displays die Ansicht angezeigt wird, sowie Änderungen an Displays, die sich auf die Anwendungsansicht auswirken können.

Behobene Probleme in WinUI 3

  • Material mit Acrylic-Hintergrund über DesktopAcrylicController wird jetzt in Windows 10-Apps unterstützt. Weitere Informationen finden Sie im GitHub-Issue #7112.
  • Es wurde ein Problem behoben, das dazu führte, dass App.UnhandledException nicht an die Anwendung weitergeleitet wurde. Weitere Informationen finden Sie im GitHub-Issue #5221.
  • Ein Problem wurde behoben, das dazu führte, dass ListView-Stile aus WinAppSDK 1.1 zurückgebildet und geändert wurden. Weitere Informationen finden Sie im GitHub-Issue #7666.

Weitere Einschränkungen und bekannte Probleme (1.2.0-preview2)

Wichtig

Wenn Sie aus einem Projekt auf WinAppSDK 1.2 verweisen, wird möglicherweise ein Fehler ähnlich dem folgenden angezeigt: Paketdowngrade erkannt: Microsoft.Windows.SDK.BuildTools von 10.0.22621.1 auf 10.0.22000.194. Dieser wird durch inkompatible Verweise auf das Paket aus dem App-Projekt und dem WinAppSDK-Paket verursacht. Um dies zu beheben, können Sie den Verweis im Projekt auf eine neuere und kompatible Version von Microsoft.Windows.SDK.BuildTools aktualisieren oder einfach den Verweis aus Ihrem Projekt entfernen. Wenn Sie ihn aus Ihrem Projekt entfernen, wird vom WinAppSDK-Paket implizit auf eine kompatible Version verwiesen.

  • Das Erstellen mit Arm64 Visual Studio wird derzeit nicht unterstützt.
  • Die Standardwerte für die automatischen Initialisierer von Bootstrapper und Undocked RegFree WinRT sind (jetzt) nur für Projekte festgelegt, die eine ausführbare Datei erzeugen (OutputType: „Exe“ oder „WinExe“). Dies verhindert das standardmäßige Hinzufügen automatischer Initialisierer zu Klassenbibliothek-DLLs und anderen nicht ausführbaren Dateien.
    • Wenn Sie einen automatischen Initialisierer in einer nicht ausführbaren Datei benötigen (z. B. eine Test-DLL, die von einer generischen ausführbaren Datei geladen wird, die den Bootstrapper nicht initialisiert), können Sie einen automatischen Initialisierer in Ihrem Projekt explizit über <WindowsAppSdkBootstrapInitialize>true</WindowsAppSdkBootstrapInitialize> oder <WindowsAppSdkUndockedRegFreeWinRTInitialize>true</WindowsAppSdkUndockedRegFreeWinRTInitialize> aktivieren.
  • Die APIs für Versionsinformationen (ReleaseInfo und RuntimeInfo) können aufgerufen werden, geben aber Version 0 zurück (und nicht die tatsächlichen Versionsinformationen).

Version 1.2 Vorschau 1 (1.2.0-preview1)

In einer vorhandenen Windows App SDK 1.1-App (aus dem stabilen Kanal) können Sie Ihr NuGet-Paket auf 1.2.0-preview1 aktualisieren (weitere Informationen finden Sie im Abschnitt Aktualisieren eines Pakets in Installieren und Verwalten von Paketen in Visual Studio mit dem NuGet-Paket-Manager).

Die aktualisierten Runtime- und MSIX-Pakete finden Sie unter Neueste Windows App SDK-Downloads.

WinUI 3

WinUI 3-Apps können Audio- und Videodaten mit den Steuerelementen MediaPlayerElement und MediaTransportControls für die Medienwiedergabe wiedergeben. Weitere Informationen zur Verwendung von Mediensteuerelementen finden Sie unter Media Player.

WinUI 3 wurde mit den neuesten Steuerelementen, Stilen und Verhaltensweisen von WinUI 2.8 aktualisiert. Diese Updates umfassen das Hinzufügen des Steuerelements InfoBadge, Verbesserungen bei Barrierefreiheit und dem Modus mit hohem Kontrast sowie Fehlerbehebungen für verschiedene Steuerelemente. Weitere Informationen finden Sie in den Versionshinweisen für WinUI 2.7 und WinUI 2.8.

Bekanntes Problem

ListView-Formatvorlagen wurden aus WinAppSDK 1.1 zurückgebildet und geändert.

Benachrichtigungen

AppNotificationBuilder wurde als Alternative zur XML-Payload zum Erstellen und Definieren von App-Benachrichtigungen eingeführt.

Informationen zur Verwendung finden Sie in der Spezifikation zu AppNotificationBuilder auf GitHub.

Ein Beispiel zum Erstellen einer Windows-Desktopanwendung, die lokale App-Benachrichtigungen sendet und empfängt, finden Sie auch unter Schnellstart: App-Benachrichtigungen im Windows App SDK.

Wichtige Änderung

Damit Pushbenachrichtigungen verarbeitet werden, müssen Apps beim Senden eines Anforderungsaufrufs für den Kanal die Azure-Objekt-ID anstelle der Azure-App-ID verwenden. Weitere Informationen zum Suchen nach Ihrer Azure-Objekt-ID finden Sie unter Schnellstart: Pushbenachrichtigung im Windows App SDK.

Behobenes Problem

PushNotificationManager.IsSupported führt eine Überprüfung auf den Modus mit erhöhten Rechten durch. Wenn die App über erhöhte Rechte verfügt, wird false zurückgegeben.

Bekannte Einschränkungen (Benachrichtigungen)

Windowing

Eine vollständige Anpassung der Titelleiste ist jetzt unter Windows 10, Version 1809 und höher über die AppWindowTitleBar-Klasse verfügbar. Sie können AppWindowTitleBar.ExtendsContentIntoTitleBar auf true festlegen, um Inhalte in den Titelleistenbereich zu erweitern, und Sie können SetDragRectangles festlegen, um Ziehbereiche (zusätzlich zu anderen Anpassungsoptionen) zu definieren.

Wenn Sie die Eigenschaft AppWindowTitleBar.IsCustomizationSupported verwendet haben, um zu überprüfen, ob Sie die AppWindowTitleBar-APIs aufrufen können, gibt sie in unterstützten Versionen von Windows 10 (1809 und höher) für Windows App SDK jetzt true zurück.

Bekannte Einschränkungen (Fensterfunktionen)

Einfache Titelleistenanpassungen werden unter Windows 10 nicht unterstützt. Dazu gehören BackgroundColor, InactiveBackgroundColor, ForegroundColor, InactiveForegroundColor und IconShowOptions. Wenn Sie diese Eigenschaften aufrufen, werden sie ohne Rückmeldung ignoriert. Alle anderen AppWindowTitleBar-APIs funktionieren unter Windows 10, Version 1809 und höher. Für die APIs für die Farben von Schaltflächen für Untertitel (u. a.) sowie für Height muss ExtendsContentIntoTitleBar auf true festgelegt werden, andernfalls werden sie ebenfalls ohne Rückmeldung ignoriert.

Zugriffssteuerung

security.accesscontrol.h mit der Funktion GetSecurityDescriptorForAppContainerNames wurde eingeführt, um die gemeinsame Nutzung benannter Objekte für gepackte Prozesse und allgemeine Win32-APIs zu vereinfachen und zu optimieren. Diese Methode akzeptiert eine Liste mit Paketfamiliennamen (Package Family Names, PFNs) und Zugriffsmasken und gibt einen Sicherheitsdeskriptor zurück. Weitere Informationen finden Sie in der Spezifikation zu GetSecurityDescriptorForAppContainerNames auf GitHub.

Weitere Einschränkungen und bekannte Probleme (1.2.0-preview1)

  • .NET PublishSingleFile wird nicht unterstützt.