StoreContext.RequestDownloadAndInstallStorePackageUpdatesAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Tente de télécharger et d’installer les mises à jour de package spécifiées pour l’application actuelle à partir du Microsoft Store. Cette méthode affiche également une boîte de dialogue d’interface utilisateur qui demande l’autorisation pour l’opération.
Important
Cette méthode doit être appelée sur le thread d’interface utilisateur.
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)
Paramètres
- storePackageUpdates
Ensemble d’objets StorePackageUpdate qui représentent les packages mis à jour à télécharger et installer.
Retours
Objet que l’appelant peut observer pour suivre la progression et l’achèvement de l’opération. En cas de réussite, le résultat est un objet StorePackageUpdateResult qui fournit des informations sur les mises à jour du package.
- Attributs
Exceptions
Si la propriété ErrorCode de l’exception a la valeur 0x80070578 (ERROR_INVALID_WINDOW_HANDLE), cela indique que la méthode n’a pas été appelée sur le thread d’interface utilisateur. Si vous appelez cette méthode dans une application de bureau qui utilise le Pont du bureau, cela peut également indiquer que vous n’avez pas configuré l’objet <xref:Windows.Services.Store.StoreContext?text=StoreContext> pour spécifier quelle fenêtre d’application est la fenêtre propriétaire des boîtes de dialogue modales affichées par cette méthode. Pour plus d’informations, consultez cet article.
Remarques
Pour obtenir la liste des packages qui ont des mises à jour disponibles, utilisez la méthode GetAppAndOptionalStorePackageUpdatesAsync . Si vous avez déjà téléchargé des mises à jour de package à l’aide de RequestDownloadStorePackageUpdatesAsync, cette méthode installe les mises à jour sans essayer de les télécharger à nouveau. Pour plus d’informations sur l’utilisation de cette méthode, y compris un exemple de code, consultez Télécharger et installer des mises à jour de package pour votre application.
Cette opération ne se bloque pas. L’objet IAsyncOperationWithProgress retourné par cette méthode se termine une fois les packages de mise à jour téléchargés et installés.
Lorsque vous appelez cette méthode, le système d’exploitation affiche l’interface utilisateur suivante :
Le système d’exploitation affiche une boîte de dialogue qui indique à l’utilisateur qu’une mise à jour d’application est disponible pour le téléchargement et demande à l’utilisateur l’autorisation de poursuivre le téléchargement. Si l’utilisateur n’accorde pas l’autorisation de démarrer le téléchargement, la propriété OverallState de la valeur de retour StorePackageUpdateResult a la valeur Canceled.
Une fois les packages mis à jour téléchargés, le système d’exploitation affiche une autre boîte de dialogue qui indique à l’utilisateur que la mise à jour de l’application attend d’être installée et demande à l’utilisateur l’autorisation de poursuivre l’installation. Cette boîte de dialogue avertit l’utilisateur que l’application peut avoir besoin de redémarrer. Si l’utilisateur n’accorde pas l’autorisation de démarrer l’installation, la propriété OverallState de la valeur de retour StorePackageUpdateResult a la valeur Canceled.
Afficher les informations de progression du téléchargement et de l’installation
La méthode que vous affectez pour gérer les notifications de progression est appelée une fois pour chaque étape du processus de téléchargement et d’installation pour chaque package de cette demande. Le gestionnaire Progress reçoit un argument StorePackageUpdateStatus qui fournit des informations sur le package de mise à jour qui a déclenché la notification de progression.
Si vous souhaitez afficher une interface utilisateur de progression personnalisée (par exemple, progressBar) qui fournit des status à l’utilisateur, vous pouvez utiliser le champ PackageDownloadProgress de l’argument StorePackageUpdateStatus pour obtenir la progression actuelle de chaque opération de téléchargement et d’installation de package, représentée par une valeur comprise entre 0,0 et 1,0. Cette valeur augmente de 0,0 à 0,8 pendant le téléchargement, puis passe de 0,8 à 1,0 pendant l’installation.
Par conséquent, si vous mappez le pourcentage affiché dans votre interface utilisateur de progression personnalisée directement à la valeur du champ PackageDownloadProgress , sachez que votre interface utilisateur affiche 80 % lorsque le téléchargement du package est terminé et que le système d’exploitation affiche la boîte de dialogue d’installation. Si vous souhaitez que votre boîte de dialogue d’avancement personnalisée affiche une valeur de 100 % quand le package est téléchargé et prêt à être installé, vous pouvez modifier votre code afin d’affecter la valeur de 100 % à votre boîte de dialogue d’avancement quand le champ PackageDownloadProgress atteint la valeur de 0,8.