Versionshinweise zum neuesten stabilen Kanal für das Windows App SDK

Der stabile Kanal stellt Releases des Windows App SDK bereit, die für die Verwendung durch Apps in Produktionsumgebungen unterstützt werden. Apps, die die stabile Version des Windows App SDK verwenden, können auch im Microsoft Store veröffentlicht werden.

Wichtige Links:

Archivierte Versionshinweise zum stabilen Kanal

Downloads für das Windows App SDK

Hinweis

Die Windows App SDK Visual Studio Extensions (VSIX) werden nicht mehr als separater Download angeboten. Sie sind auf dem Visual Studio Marketplace innerhalb von Visual Studio erhältlich.

Version 1.6

In den folgenden Abschnitten werden neue und aktualisierte Features und bekannte Probleme für Version 1.6 beschrieben.

In einer vorhandenen Windows App SDK 1.5-App können Sie Ihr Nuget-Paket auf 1.6.240829007 aktualisieren (siehe Abschnitt "Aktualisieren eines Pakets" in Visual Studio mit dem NuGet-Paket-Manager).

Die aktualisierten Runtime- und MSIX-Pakete finden Sie unter Downloads für das Windows App SDK.

Erforderliche Projektänderungen für 1.6

C++-Projektänderungen

Beim Aktualisieren eines C++-Projekts auf 1.6 müssen Sie dem Microsoft.Web.WebView2 Paket einen Projektverweis hinzufügen. Wenn Sie nuGet-Paket-Manager in Visual Studio aktualisieren, wird diese Abhängigkeit für Sie hinzugefügt.

C#-Projektänderungen

In 1.6 erfordern verwaltete Windows App SDK-Apps Microsoft.Windows.SDK.NET.Ref *.*.*.38 oder höher, die über WindowsSdkPackageVersion in Ihrer csproj Datei angegeben werden können. Zum Beispiel:

<Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
       <OutputType>WinExe</OutputType>
       <TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
       <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
       <WindowsSdkPackageVersion>10.0.22621.38</WindowsSdkPackageVersion>
   <PropertyGroup>
   ...

Darüber hinaus sollten verwaltete Windows App SDK-Apps auf Microsoft.Windows.CsWinRT 2.1.1 (oder höher) aktualisiert werden.

Hinweis

Diese manuellen Verweise werden nach der Veröffentlichung des nächsten .NET SDK-Wartungsupdates nicht mehr benötigt.

Unterstützung von nativem AOT

Native AOT-Unterstützung in 1.6

Die .NET-Projekteigenschaft PublishAot wird jetzt für die systemeigene Ahead-Of-Time-Kompilierung unterstützt. Ausführliche Informationen zu Native AOT finden Sie unter Native AOT-Bereitstellung. Da AOT auf der Trimming-Unterstützung basiert, gilt auch ein Großteil der folgenden Kürzungsanleitungen für AOT.

Für PublishAot support- und trimming support, in addition to the C# project changes described in the previous section you'll also need a package reference to Microsoft.Windows.CsWinRT 2.1.1 (or later), to enable the source generator from that package until the next .NET SDK servicing update is released when it will not longer be required.

Weitere Informationen finden Sie im CsWinRT Trimming/AOT-Supportdokument und in den Versionshinweisen zu CsWinRT 2.1.1.

Da das Windows App SDK beim Bereitstellen von F5 Veröffentlichungsziele aufruft, empfehlen wir, die NuGet-Wiederherstellungszeit zu aktivieren PublishAot , indem Sie dies zu Ihrer csproj Datei hinzufügen:

<PublishAot>true</PublishAot>

Beheben von AOT-Problemen

In dieser Version ist der Entwickler dafür verantwortlich, sicherzustellen, dass alle Typen ordnungsgemäß gewurzelt sind, um Kürzungen (z. B. mit spiegelbasierten {Binding} Zielen) zu vermeiden. Spätere Versionen werden sowohl C#/WinRT als auch der XAML-Compiler verbessern, um die Stammerstellung nach Möglichkeit zu automatisieren, Entwickler auf das Kürzen von Risiken hinzuweisen und Mechanismen zur Behebung bereitzustellen.

Teilklassen

C#/WinRT enthält PublishAot auch Unterstützung in Version 2.1.1. Um eine Klasse für die AOT-Veröffentlichung mit C#/WinRT zu aktivieren, muss sie zuerst markiert partialwerden. Dadurch kann der C#/WinRT AOT-Quellanalysator die Klassen für statische Analysen attributieren. Nur Klassen (die Methoden enthalten, die Ziele des Kürzens) erfordern dieses Attribut.

Unsicherer Codefehler

Der CsWinRT-Quellgenerator kann Code generieren, der unsafeverwendet wird. Wenn Sie während der Kompilierung einen solchen Fehler oder eine Diagnosewarnung dafür erreicht haben (CS0227 für "Unsicherer Code kann nur angezeigt werden, wenn sie mit /unsicher kompiliert wird"), sollten Sie EnableUnsafeBlocks auf "true" festlegen. Weitere Informationen finden Sie unter GitHub-Problem CsWinRT #1721.

WebView2 noch nicht AOT-kompatibel

Die WebView2-Projektionen in Microsoft.Web.WebView2 Paketversion 1.0.2651.64 sind noch nicht AOT kompatibel. Dies wird in einer bevorstehenden Version des Microsoft.Web.WebView2 Pakets behoben, auf die Sie dann in Ihrem Projekt verweisen können.

Spiegelungsfreie Techniken

Um die AOT-Kompatibilität zu ermöglichen, sollten spiegelbasierte Techniken durch statisch typierte Serialisierung, AppContext.BaseDirectory, typeof() usw. ersetzt werden. Ausführliche Informationen finden Sie in der Einführung zum Kürzen von Warnungen.

Stammtypen

Bis zur vollständigen Unterstützung für {Binding} die Implementierung können Typen wie folgt vor dem Kürzen beibehalten werden:

Da projektverwendete P Assembly A mit Typ T im Namespace Nverwendet wird, auf die nur dynamisch verwiesen wird (normalerweise gekürzt), T kann über Folgendes beibehalten werden:

P.csproj:

<ItemGroup>
    <TrimmerRootDescriptor Include="ILLink.Descriptors.xml" />
</ItemGroup>

ILLink.Descriptors.xml:

<?xml version="1.0" encoding="utf-8"?>
<linker>
    <assembly fullname="A">
        <type fullname="N.T" preserve="all" />
    </assembly>
</linker>

Vollständige XML-Ausdruckssyntax des Stammdeskriptors finden Sie unter "Stammdeskriptoren".

Hinweis

Abhängigkeitspakete, die noch keine AOT-Unterstützung übernommen haben, können Laufzeitprobleme aufweisen.

Decoupled WebView2-Versionsverwaltung

Das Windows App SDK verwendet jetzt das Edge WebView2 SDK als NuGet-Referenz, anstatt eine hartcodierte Version des Edge WebView2 SDK einzubetten. Mit dem neuen Modell können Apps eine neuere Version des Microsoft.Web.WebView2 Pakets auswählen, anstatt auf die Version beschränkt zu sein, mit der das Windows App SDK erstellt wurde. Mit dem neuen Modell können Apps auch auf NuGet-Pakete verweisen, die auch auf das Edge WebView2 SDK verweisen. Weitere Informationen finden Sie unter GitHub-Problem #5689.

Neue Paketbereitstellungs-APIs

Die Paketverwaltungs-API hat mehrere Verbesserungen erhalten, darunter Is*ReadyOrNewerAvailable*(), EnsureReadyOptions.RegisterNewerIfAvailable, Is*Provisioned*(), IsPackageRegistrationPending() und mehrere Fehlerkorrekturen. Weitere Informationen finden Sie unter PackageManagement.md und Pullanforderung Nr. 4453 .

Verbesserte TabView-Registerkarte ausreißen

Verbessertes TabView-Abreißen in 1.6

TabView unterstützt einen neuen CanTearOutTabs Modus, der eine erweiterte Benutzeroberfläche zum Ziehen von Registerkarten und Zum Ausziehen in ein neues Fenster bietet. Wenn diese neue Option aktiviert ist, ähnelt das Ziehen von Tabstopps in Edge und Chrome sehr ähnlich wie das Ziehen von Registerkarten, bei dem während des Ziehens sofort ein neues Fenster erstellt wird, sodass der Benutzer es an den Rand des Bildschirms ziehen kann, um das Fenster in einer reibungslosen Bewegung zu maximieren oder anzudockt. Diese Implementierung verwendet auch keine Drag-and-Drop-APIs, sodass sie nicht durch Einschränkungen in diesen APIs beeinträchtigt wird. Insbesondere wird das Ausreißen von Registerkarten in Prozessen unterstützt, die als Administrator ausgeführt werden.

Weitere wichtige Änderungen

  • Es wurde eine neue ColorHelper.ToDisplayName() API hinzugefügt, die diese Lücke von UWP füllt.
  • Es wurde eine neue Microsoft.Windows.Globalization.ApplicationLanguages Klasse hinzugefügt, die insbesondere ein neues PrimaryLanguageOverride Feature enthält. Weitere Informationen finden Sie unter GitHub-Problem #4523.
  • Unversiegelt ItemsWrapGrid. Dies sollte eine abwärtskompatible Änderung sein.
  • PipsPager unterstützt einen neuen Modus, in dem er zwischen den ersten und letzten Elementen umbrochen werden kann.

Neuer PipsPager-Umbruchmodus in 1.6

  • RatingControl ist jetzt besser anpassbar, indem einige hartcodierte Formateigenschaften in Designressourcen verschoben werden. Dadurch können Apps diese Werte überschreiben, um die Darstellung von RatingControl besser anzupassen.
Neue RatingControl-Anpassung in 1.6
  • WinUI 3 hat sich zum typografischen Modell für die Schriftauswahl und nicht zum legacy-Modell für Stärke/Stretch/Style geändert. Das typografische Modell ist für einige neuere Schriftarten erforderlich, einschließlich Segoe UI Variable und ermöglicht erweiterte Schriftartfunktionen. Einige ältere Schriftarten, die für die Auswahl das Modell "Weight/Stretch/Style" verwenden, werden möglicherweise nicht mit dem typografischen Modell gefunden.

Bekannte Probleme

  • Wenn der Debugger für alle C++-Ausnahmen festgelegt ist, werden einige laute Ausnahmen beim Start im BCP47-Code (Windows Globalization) abgebrochen. Weitere Informationen finden Sie unter GitHub-Problem #4691.
  • Komponentenbibliothekspakete, die auf das WinAppSDK 1.6-Paket verweisen, erhalten nicht ordnungsgemäß den Inhalt des webView2-Pakets. Weitere Informationen finden Sie unter WebView2Feedback #4743. Eine Problemumgehung besteht darin, bei Bedarf einen direkten Verweis auf das Microsoft.Web.WebView2 Paket hinzuzufügen.
  • Apps, die mit nativem AOT kompiliert wurden, können manchmal aufgrund einer Racebedingung im GC-Thread der .NET-Laufzeit ein hängendes Problem nach der Seitennavigation haben. Weitere Informationen finden Sie unter .NET-Problem #104582.
  • Die erste Version von 1.6.0 hat ein Problem mit einer unserer Abhängigkeiten eingeführt, die in einer bevorstehenden Version des .NET SDK behoben werden. Wenn bei der Version Ihres Microsoft.Windows.SDK.NET Verweises ein Fehler auftritt, müssen Sie explizit auf die Version des .NET SDK verweisen, die von Der Fehlermeldung angegeben wird. Wenn der Fehler beispielsweise besagt, dass Sie Version 10.0.19041.38 benötigen, fügen Sie Der Datei Folgendes hinzu .csproj :
    • <WindowsSdkPackageVersion>10.0.19041.38</WindowsSdkPackageVersion>.

Fehlerkorrekturen

  • Ein Absturz beim Festlegen InfoBar.IsOpen in XAML wurde behoben. Weitere Informationen finden Sie unter GitHub-Problem #8391.
  • Es wurde ein Problem behoben, bei dem HTML-Elemente die Zeigererfassung verlieren würden, wenn die Maus außerhalb der WebView2 Grenzen verschoben wurde. Weitere Informationen finden Sie unter GitHub-Problem #8677.
  • Es wurde ein Problem behoben, bei dem das Ziehen und Ablegen in ein Flyout mit ShouldConstrainToRootBounds=false nicht funktionierte. Weitere Informationen finden Sie unter GitHub-Problem #9276.
  • Es wurde ein Problem behoben, bei dem ms-appx:// Verweise nicht funktionierten, wenn PublishSingleFile diese aktiviert sind. Weitere Informationen finden Sie unter GitHub-Problem #9468.
  • Es wurde ein Problem behoben, bei dem Debuggersymbole für einige Binärdateien nicht ordnungsgemäß funktionieren. Weitere Informationen finden Sie unter GitHub-Problem #4633.
  • Ein potenzieller Absturz beim Unterklassen wurde NavigationViewbehoben.
  • Es wurde ein Problem behoben, bei dem Tabellenrahmen in einem RichEditBox Tabellenrahmen beim Scrollen oder Verringern der Tabellengröße nicht ordnungsgemäß gelöscht wurden.
  • Ein Problem wurde behoben, bei dem Flyouts aus MediaTransportControls einem vollständig transparenten Hintergrund stammen.
  • Es wurde ein Problem behoben, bei dem das Ziehen in eine WebView2 bei anderen Anzeigeskalierungsfaktoren als 100 % oder bei aktivierter Systemtextskalierung fehlschlug oder an der falschen Position abstürzte.
  • Es wurde ein Problem behoben, bei dem TextBox/RichEditBox eingabehilfen nicht ankündigen würden, wenn die Eingabe blockiert wurde, weil sie an der MaxLength Grenze liegt.
  • Einige Probleme beim Umgang mit benutzerdefinierten Titelleistenszenarien wurden behoben. Weitere Informationen finden Sie unter GitHub-Probleme #7629, #9670, #9709 und #8431.
  • Es wurde ein Problem behoben, bei dem InfoBadge das Symbol nicht sichtbar war. Weitere Informationen finden Sie unter GitHub-Problem #8176.
  • Ein Problem mit Symbolen wurde behoben, das manchmal an der falschen Position in CommandBarFlyout. Weitere Informationen finden Sie im GitHub-Issue #9409.
  • Ein Problem mit dem Tastaturfokus in Menüs beim Öffnen oder Schließen eines Untermenüs wurde behoben. Weitere Informationen finden Sie unter GitHub-Problem #9519.
  • Ein Problem mit der Verwendung des falschen IsExpanded Zustands beim TreeView Recycling von Elementen wurde behoben. Weitere Informationen finden Sie unter GitHub-Problem #9549.
  • Ein Problem beim Verwenden einer ElementName-Bindung in einer ItemsRepeater.ItemTemplate. Weitere Informationen finden Sie unter GitHub-Problem #9715.
  • Es wurde ein Problem mit dem ersten Element in einer ItemsRepeater manchmal falschen Position behoben. Weitere Informationen finden Sie unter GitHub-Problem #9743.
  • Es wurde ein Problem behoben, bei dem InputNonClientPointerSource manchmal Eingaben für die Schaltflächen "min/max/close" abgebrochen wurden. Weitere Informationen finden Sie unter GitHub-Problem #9749.
  • Ein Kompilierungsfehler bei Verwendung von Microsoft.UI.Interop.h mit clang-cl wurde behoben. Weitere Informationen finden Sie unter GitHub-Problem #9771.
  • Es wurde ein Problem behoben, bei dem das CharacterReceived Ereignis nicht funktionierte/ComboBoxTextBox. Weitere Informationen finden Sie unter GitHub-Problem #9786.
  • Es wurde ein Problem behoben, bei dem doppelte KeyUp Ereignisse für Pfeil- und Tabulatortasten ausgelöst wurden. Weitere Informationen finden Sie unter GitHub-Problem #9399.
  • Es wurde ein Problem behoben, bei dem das PowerManager.SystemSuspendStatusChanged Ereignis nicht verwendet werden konnte, um das SystemSuspendStatusEreignis abzurufen. Weitere Informationen finden Sie unter GitHub-Problem #2833.
  • Es wurde ein Problem behoben, bei dem der anfängliche Tastaturfokus bei einem WebView2 Zeitpunkt, an dem das einzige Steuerelement im Fenster war, nicht ordnungsgemäß übergeben wurde.
  • Es wurde ein Problem behoben, bei ExtendsContentIntoTitleBar=true dem die Schaltflächen "Min/Max/Schließen" im Benutzeroberflächenautomatisierung nicht ordnungsgemäß angezeigt wurden, wodurch Voice Access keine Nummern für diese Schaltflächen anzeigte.
  • Es wurde ein Problem behoben, bei dem eine App aufgrund unerwarteter Reentranz in einer Sperrprüfung abstürzte.
  • Es wurde ein Problem behoben, bei dem Hyperlink Farben beim Wechseln in ein Design mit hohem Kontrast nicht ordnungsgemäß aktualisiert wurden.
  • Es wurde ein Problem behoben, bei dem das Ändern der Auflistung eines ListView In einem Hintergrundfensters dieses Fensters möglicherweise falsch in den Vordergrund verschoben und den Fokus erhält.
  • Es wurde ein Problem behoben, bei dem das Aufrufen ItemsRepeater.StartBringIntoView manchmal dazu führen konnte, dass Elemente nicht mehr angezeigt werden.
  • Es wurde ein Problem behoben, bei dem das Berühren und Ziehen eines Button Ins in einem ScrollViewer gedrückten Zustand den Vorgang verlassen würde.
  • IntelliSense wurde aktualisiert, bei dem Informationen für viele neuere Typen und Member fehlen.
  • Es wurde ein Problem behoben, bei dem durch Klicken in einen leeren Bereich eines Steuerelements ScrollViewer immer der Fokus auf das erste fokussierbare Steuerelement im Steuerelement verschoben und in die ScrollViewer Ansicht gescrollt wurde. Weitere Informationen finden Sie unter GitHub-Problem Nr. 597.
  • Es wurde ein Problem behoben, bei dem das Window.Activated Ereignis manchmal mehrmals ausgelöst wurde. Weitere Informationen finden Sie unter GitHub-Problem #7343.
  • Es wurde ein Problem behoben, bei dem das Festlegen der NavigationViewItem.IsSelected Eigenschaft, um zu true verhindern, dass die untergeordneten Elemente angezeigt werden, wenn sie erweitert werden. Weitere Informationen finden Sie unter GitHub-Problem #7930.
  • Es wurde ein Problem behoben, bei dem MediaPlayerElement Beschriftungen mit None oder DropShadow Randeffekten nicht ordnungsgemäß angezeigt wurden. Weitere Informationen finden Sie unter GitHub-Problem #7981.
  • Es wurde ein Problem behoben, bei dem die Flyout.ShowMode Eigenschaft beim Anzeigen des Flyouts nicht verwendet wurde. Weitere Informationen finden Sie unter GitHub-Problem #7987.
  • Es wurde ein Problem behoben, bei dem NumberBox manchmal Rundungsfehler aufgetreten waren. Weitere Informationen finden Sie unter GitHub-Problem #8780.
  • Es wurde ein Problem behoben, bei dem die Verwendung einer bibliothek, die mit einer älteren Version von WinAppSDK kompiliert wurde, einen Fehler beim Versuch, einen Typ oder eine Eigenschaft zu finden, gefunden wurde. Weitere Informationen finden Sie unter GitHub-Problem #8810.
  • Ein Problem wurde behoben, bei dem der anfängliche Tastaturfokus beim Starten eines Fensters nicht festgelegt wurde. Weitere Informationen finden Sie unter GitHub-Problem #8816.
  • Es wurde ein Problem behoben, bei dem FlyoutShowMode.TransientWithDismissOnPointerMoveAway nach der ersten Anzeige nicht mehr funktionierte. Weitere Informationen finden Sie unter GitHub-Problem #8896.
  • Es wurde ein Problem behoben, bei dem einige Steuerelemente nicht ordnungsgemäß vorlagenbindung Foreground und Background -eigenschaften enthielten. Weitere Informationen finden Sie unter GitHub-Problem #7070, #9020, #9029, #9083 und #9102.
  • Es wurde ein Problem behoben, bei dem ThemeResourcein Settern verwendet VisualStateManager wurde, bei der Designänderung nicht aktualisiert wurde. Dies hat häufig Auswirkungen auf Steuerelemente in Flyouts. Weitere Informationen finden Sie unter GitHub-Problem #9198.
  • Es wurde ein Problem behoben, bei dem WebView der Schlüsselfokus verloren ging, was zu zusätzlichen Weichzeichner-/Fokusereignissen und anderen Problemen führte. Weitere Informationen finden Sie unter GitHub-Problem #9288.
  • Ein Problem wurde behoben, bei dem NavigationView ein Bindungsfehler in der Debugausgabe angezeigt werden konnte. Weitere Informationen finden Sie unter GitHub-Problem #9384.
  • Ein Problem wurde behoben, bei dem SVG-Dateien, die ein negatives Viewbox-Element definieren, nicht mehr gerendert wurden. Weitere Informationen finden Sie unter GitHub-Problem #9415.
  • Es wurde ein Problem behoben, bei dem das Ändern ItemsView.Layout der Ausrichtung dazu führte, dass ein Element entfernt wurde. Weitere Informationen finden Sie unter GitHub-Problem #9422.
  • Es wurde ein Problem behoben, bei dem beim Scrollen eine ScrollView Menge Debugausgabe generiert wurde. Weitere Informationen finden Sie unter GitHub-Problem #9434.
  • Es wurde ein Problem behoben, bei dem MapContorl.InteractiveControlsVisible nicht ordnungsgemäß funktionierte. Weitere Informationen finden Sie unter GitHub-Problem #9486.
  • Es wurde ein Problem behoben, bei dem MapControl.MapElementClick das Ereignis nicht ordnungsgemäß ausgelöst wurde. Weitere Informationen finden Sie unter GitHub-Problem #9487.
  • Es wurde ein Problem behoben, bei dem x:Bind vor der Verwendung eines schwachen Verweises nicht auf NULL überprüft wurde, was zu einem Absturz führen konnte. Weitere Informationen finden Sie unter GitHub-Problem #9551.
  • Es wurde ein Problem behoben, bei dem das Ändern der Eigenschaft ihre TeachingTip.Target Position nicht ordnungsgemäß aktualisiert hat. Weitere Informationen finden Sie unter GitHub-Problem #9553.
  • Ein Problem wurde behoben, bei dem Dropdowns in WebView2 nicht geantwortet haben. Weitere Informationen finden Sie unter GitHub-Problem #9566.
  • Ein Speicherverlust bei Verwendung wurde GeometryGroupbehoben. Weitere Informationen finden Sie unter GitHub-Problem #9578.
  • Es wurde ein Problem behoben, bei dem ein Bildlauf durch eine sehr große Anzahl von Elementen aus einem ItemRepeater in einem ScrollView Element zu leeren Renderframes führen konnte. Weitere Informationen finden Sie unter GitHub-Problem #9643.
  • Es wurde ein Problem behoben, bei dem SceneVisual es nicht funktionierte.

Neue APIs in 1.6.0

Version 1.6.0 enthält die folgenden neuen APIs im Vergleich zur stabilen Version 1.5:

Microsoft.UI

    ColorHelper
        ToDisplayName
Microsoft.UI.Input

    EnteredMoveSizeEventArgs
    EnteringMoveSizeEventArgs
    ExitedMoveSizeEventArgs
    InputNonClientPointerSource
        EnteredMoveSize
        EnteringMoveSize
        ExitedMoveSize
        WindowRectChanged
        WindowRectChanging

    MoveSizeOperation
    WindowRectChangedEventArgs
    WindowRectChangingEventArgs
Microsoft.UI.Xaml

    XamlRoot
        CoordinateConverter
Microsoft.UI.Xaml.Automation.Peers

    ScrollPresenterAutomationPeer
Microsoft.UI.Xaml.Controls

    PipsPager
        WrapMode
        WrapModeProperty

    PipsPagerWrapMode
    TabView
        CanTearOutTabs
        CanTearOutTabsProperty
        ExternalTornOutTabsDropped
        ExternalTornOutTabsDropping
        TabTearOutRequested
        TabTearOutWindowRequested

    TabViewExternalTornOutTabsDroppedEventArgs
    TabViewExternalTornOutTabsDroppingEventArgs
    TabViewTabTearOutRequestedEventArgs
    TabViewTabTearOutWindowRequestedEventArgs
Microsoft.Windows.Globalization

    ApplicationLanguages
Microsoft.Windows.Management.Deployment

    EnsureReadyOptions
        RegisterNewerIfAvailable

    PackageDeploymentFeature
    PackageDeploymentManager
        IsPackageDeploymentFeatureSupported
        IsPackageProvisioned
        IsPackageProvisionedByUri
        IsPackageReadyOrNewerAvailable
        IsPackageReadyOrNewerAvailableByUri
        IsPackageSetProvisioned
        IsPackageSetReadyOrNewerAvailable

    PackageReadyOrNewerAvailableStatus
Microsoft.Windows.Storage

    ApplicationData
    ApplicationDataContainer
    ApplicationDataContract
    ApplicationDataCreateDisposition
    ApplicationDataLocality