Lingua

StoreContext.RequestDownloadAndInstallStorePackageUpdatesAsync Metodo

Definizione

Tenta di scaricare e installare gli aggiornamenti del pacchetto specificati per l'app corrente da Microsoft Store. Questo metodo visualizza anche una finestra di dialogo dell'interfaccia utente che richiede l'autorizzazione per l'operazione.

Importante

Questo metodo deve essere chiamato nel thread dell'interfaccia utente.

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)

Parametri

storePackageUpdates

IIterable<StorePackageUpdate>

IEnumerable<StorePackageUpdate>

Set di oggetti StorePackageUpdate che rappresentano i pacchetti aggiornati da scaricare e installare.

Valori restituiti

Oggetto che il chiamante può osservare per tenere traccia dello stato di avanzamento e del completamento dell'operazione. Al termine, il risultato è un oggetto StorePackageUpdateResult che fornisce informazioni sugli aggiornamenti del pacchetto.

Attributi

Eccezioni

Se la proprietà ErrorCode dell'eccezione ha il valore 0x80070578 (ERROR_INVALID_WINDOW_HANDLE), indica che il metodo non è stato chiamato nel thread dell'interfaccia utente. Se si chiama questo metodo in un'applicazione desktop che usa Desktop Bridge, questo può anche indicare che non è stato configurato il <xref href="Windows. Services.Store.StoreContext?text=StoreContext" /> oggetto per specificare quale finestra dell'applicazione è la finestra proprietario per le finestre di dialogo modali visualizzate da questo metodo. Per altre informazioni, vedi questo articolo.

Commenti

Per ottenere l'elenco dei pacchetti con aggiornamenti disponibili, usare il metodo GetAppAndOptionalStorePackageUpdatesAsync . Se sono già stati scaricati gli aggiornamenti dei pacchetti tramite RequestDownloadStorePackageUpdatesAsync, questo metodo installerà gli aggiornamenti senza tentare di scaricarli di nuovo. Per altre informazioni sull'uso di questo metodo, incluso un esempio di codice, vedere Scaricare e installare gli aggiornamenti dei pacchetti per l'app.

Questa operazione non verrà bloccata. L'oggetto IAsyncOperationWithProgress restituito da questo metodo verrà completato dopo il download e l'installazione dei pacchetti di aggiornamento.

Quando si chiama questo metodo, il sistema operativo visualizza l'interfaccia utente seguente:

  • Il sistema operativo visualizza una finestra di dialogo che indica all'utente che un aggiornamento dell'app è disponibile per il download e chiede all'utente l'autorizzazione per procedere con il download. Se l'utente non concede l'autorizzazione per avviare il download, la proprietà OverallState del valore restituito StorePackageUpdateResult ha il valore Canceled.

  • Dopo il download dei pacchetti aggiornati, il sistema operativo visualizza un'altra finestra di dialogo che indica all'utente che l'aggiornamento dell'app è in attesa di essere installato e chiede all'utente l'autorizzazione per procedere con l'installazione. Questa finestra di dialogo avvisa l'utente che potrebbe dover riavviare l'app. Se l'utente non concede l'autorizzazione per avviare l'installazione, la proprietà OverallState del valore restituito StorePackageUpdateResult ha il valore Canceled.

Visualizzare le informazioni sullo stato di avanzamento per il download e l'installazione

Il metodo assegnato per gestire le notifiche di stato viene chiamato una volta per ogni passaggio del processo di download e installazione per ogni pacchetto in questa richiesta. Il gestore Progress riceve un argomento StorePackageUpdateStatus che fornisce informazioni sul pacchetto di aggiornamento che ha generato la notifica di stato.

Se si desidera visualizzare un'interfaccia utente di stato personalizzata,ad esempio progressBar, che fornisce lo stato all'utente, è possibile usare il campo PackageDownloadProgress dell'argomento StorePackageUpdateStatus per ottenere lo stato di avanzamento corrente di ogni operazione di download e installazione del pacchetto, rappresentato da un valore compreso tra 0,0 e 1.0. Questo valore aumenta da 0,0 a 0,8 durante il download e quindi aumenta da 0,8 a 1,0 durante l'installazione.

Pertanto, se si esegue il mapping della percentuale visualizzata nell'interfaccia utente di stato personalizzata direttamente al valore del campo PackageDownloadProgress , tenere presente che l'interfaccia utente visualizzerà 80% al termine del download del pacchetto e il sistema operativo visualizza la finestra di dialogo di installazione. Se vuoi che l'interfaccia utente di stato personalizzata visualizzi 100% quando il pacchetto viene scaricato e pronto per l'installazione, puoi modificare il codice per assegnare 100% all'interfaccia utente di stato quando il campo PackageDownloadProgress raggiunge 0.8.

Si applica a

Vedi anche