StoreContext.RequestDownloadAndInstallStorePackageUpdatesAsync Methode

Definition

Versucht, die angegebenen Paketupdates für die aktuelle App aus dem Microsoft Store herunterzuladen und zu installieren. Diese Methode zeigt auch ein Dialogfeld der Benutzeroberfläche an, das die Berechtigung für den Vorgang anfordert.

Wichtig

Diese Methode muss im UI-Thread aufgerufen werden.

public:
 virtual IAsyncOperationWithProgress<StorePackageUpdateResult ^, StorePackageUpdateStatus> ^ RequestDownloadAndInstallStorePackageUpdatesAsync(IIterable<StorePackageUpdate ^> ^ storePackageUpdates) = RequestDownloadAndInstallStorePackageUpdatesAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<StorePackageUpdateResult, StorePackageUpdateStatus> RequestDownloadAndInstallStorePackageUpdatesAsync(IIterable<StorePackageUpdate> const& storePackageUpdates);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<StorePackageUpdateResult,StorePackageUpdateStatus> RequestDownloadAndInstallStorePackageUpdatesAsync(IEnumerable<StorePackageUpdate> storePackageUpdates);
function requestDownloadAndInstallStorePackageUpdatesAsync(storePackageUpdates)
Public Function RequestDownloadAndInstallStorePackageUpdatesAsync (storePackageUpdates As IEnumerable(Of StorePackageUpdate)) As IAsyncOperationWithProgress(Of StorePackageUpdateResult, StorePackageUpdateStatus)

Parameter

storePackageUpdates

IIterable<StorePackageUpdate>

IEnumerable<StorePackageUpdate>

Der Satz von StorePackageUpdate-Objekten , die die aktualisierten Pakete darstellen, die heruntergeladen und installiert werden sollen.

Gibt zurück

Ein Objekt, das der Aufrufer beobachten kann, um den Fortschritt und den Abschluss des Vorgangs nachzuverfolgen. Nach erfolgreicher Fertigstellung ist das Ergebnis ein StorePackageUpdateResult-Objekt , das Informationen zu den Paketupdates bereitstellt.

Attribute

Ausnahmen

Wenn die ErrorCode-Eigenschaft der Ausnahme den Wert 0x80070578 (ERROR_INVALID_WINDOW_HANDLE) aufweist, gibt dies an, dass die Methode nicht im UI-Thread aufgerufen wurde. Wenn Sie diese Methode in einer Desktopanwendung aufrufen, die die Desktop-Brücke verwendet, kann dies auch darauf hindeuten, dass Sie das <xref:Windows.Services.Store.StoreContext?text=StoreContext-Objekt> nicht konfiguriert haben, um anzugeben, welches Anwendungsfenster das Besitzerfenster für modale Dialoge ist, die von dieser Methode angezeigt werden. hier finden Sie weitere Informationen

Hinweise

Verwenden Sie die GetAppAndOptionalStorePackageUpdatesAsync-Methode , um die Liste der Pakete abzurufen, für die Updates verfügbar sind. Wenn Sie bereits Paketupdates mithilfe von RequestDownloadStorePackageUpdatesAsync heruntergeladen haben, installiert diese Methode die Updates, ohne sie erneut herunterzuladen. Weitere Informationen zur Verwendung dieser Methode, einschließlich eines Codebeispiels, finden Sie unter Herunterladen und Installieren von Paketupdates für Ihre App.

Dieser Vorgang wird nicht blockiert. Das von dieser Methode zurückgegebene IAsyncOperationWithProgress-Objekt wird abgeschlossen, nachdem die Updatepakete heruntergeladen und installiert wurden.

Wenn Sie diese Methode aufrufen, zeigt das Betriebssystem die folgende Benutzeroberfläche an:

  • Das Betriebssystem zeigt ein Dialogfeld an, das dem Benutzer mitteilt, dass ein App-Update zum Herunterladen verfügbar ist, und fordert die Berechtigung des Benutzers auf, mit dem Download fortzufahren. Wenn der Benutzer keine Berechtigung zum Starten des Downloads erteilt, weist die OverallState-Eigenschaft des StorePackageUpdateResult-Rückgabewerts den Wert Canceled auf.

  • Nachdem die aktualisierten Pakete heruntergeladen wurden, zeigt das Betriebssystem ein weiteres Dialogfeld an, das dem Benutzer mitteilt, dass das App-Update auf die Installation wartet, und fordert die Berechtigung des Benutzers auf, mit der Installation fortzufahren. In diesem Dialogfeld wird der Benutzer gewarnt, dass die App möglicherweise neu gestartet werden muss. Wenn der Benutzer keine Berechtigung zum Starten der Installation erteilt, weist die OverallState-Eigenschaft des StorePackageUpdateResult-Rückgabewerts den Wert Canceled auf.

Anzeigen von Statusinformationen für den Download und die Installation

Die Methode, die Sie für die Verarbeitung von Statusbenachrichtigungen zuweisen, wird einmal für jeden Schritt im Download- und Installationsvorgang für jedes Paket in dieser Anforderung aufgerufen. Der Progress-Handler empfängt ein StorePackageUpdateStatus-Argument , das Informationen zu dem Updatepaket bereitstellt, das die Statusbenachrichtigung ausgelöst hat.

Wenn Sie eine benutzerdefinierte Fortschrittsbenutzeroberfläche (z. B. eine ProgressBar) anzeigen möchten, die dem Benutzer status bereitstellt, können Sie das Feld PackageDownloadProgress des StorePackageUpdateStatus-Arguments verwenden, um den aktuellen Fortschritt jedes Paketdownload- und Installationsvorgangs abzurufen, dargestellt durch einen Wert von 0,0 bis 1,0. Dieser Wert steigt während des Downloads von 0,0 auf 0,8 und erhöht sich dann während der Installation von 0,8 auf 1,0.

Wenn Sie den prozentsatz, der in Der benutzerdefinierten Fortschrittsbenutzeroberfläche angezeigt wird, direkt dem Wert des Felds PackageDownloadProgress zuordnen, sollten Sie daher beachten, dass ihre Benutzeroberfläche 80 % anzeigt, wenn der Download des Pakets abgeschlossen ist und das Betriebssystem das Installationsdialogfeld anzeigt. Wenn deine benutzerdefinierte Statusanzeige den Wert „100 %“ aufweisen soll, wenn das Paket heruntergeladen und bereit zum Installieren ist, kannst du den Code so ändern, dass der Statusanzeige 100 % zugewiesen werden, wenn das Feld PackageDownloadProgress den Wert 0,8 erreicht.

Gilt für:

Weitere Informationen