Windows 10 introduce un meccanismo che consente ad un'applicazione di continuare la sua attività in background.
Un0applicazione va in background quando un utente inizia ad utilizzare un'altra app, ma vuole che quella che stava utilizzando in precedenza continui il suo lavoro, come ad esempio, per salvare i dati sul un server o tracciare la posizione tramite l'utilizzo del GPS.
Il codice per permettere all'applicazione di girare in background è abbastanza semplice:
private async void OnSuspending(object sender, SuspendingEventArgs e) { var deferral = e.SuspendingOperation.GetDeferral(); using (var session = new ExtendedExecutionSession()) { session.Reason = ExtendedExecutionReason.LocationTracking (); session.Description = "Sto tracciando la posizione"; session.Revoked += ExtensionRevoked; var result = await session.RequestExtensionAsync(); if(result == ExtensionExecutionResult.Allowed) { //tracciare la posizione } } deferral.Complete(); }
Quando la nostra applicazione è in background e sta per essere sospesa, può iniziare una nuova sessione creando l'oggetto ExtendedExecutionSession e specificandone la ragione, mediante un enumeratore.
Infine, viene eseguita la richiesta di esecuzione in background, mediante il metodo RequestExtensionAsync.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare il metodo Index di LINQ per scorrere una lista sapendo anche l'indice dell'elemento
Usare il colore CSS per migliorare lo stile della pagina
Gestire il colore CSS con HWB
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Creare gruppi di client per Event Grid MQTT
Potenziare la ricerca su Cosmos DB con Full Text Search
Ottenere un token di accesso per una GitHub App
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Definire stili a livello di libreria in Angular
Effettuare il binding di date in Blazor
Ottimizzazione dei block template in Angular 17