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
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Gestione degli stili CSS con le regole @layer
Usare lo spread operator con i collection initializer in C#
Gestire domini wildcard in Azure Container Apps
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Applicare un filtro per recuperare alcune issue di GitHub
Testare l'invio dei messaggi con Event Hubs Data Explorer
Sfruttare gli embedding e la ricerca vettoriale con Azure SQL Database
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Creare gruppi di client per Event Grid MQTT
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
I più letti di oggi
- Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
- Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
- Chiamare direttamente un numero di telefono con HTML5
- Richiamare programmaticamente le operazioni di aggiornamento, eliminazione e inserimento di FormView, DetailsView e GridView