Le applicazioni che sono disponibili all'interno dello store stanno diventando via via sempre più complesse e richiedono sempre maggior potenza per essere eseguite.
Pensiamo ad esempio ad un commerciale che è continuamente in giro e deve inserire dei dati da caricare nel cloud: con un telefono la batteria potrebbe rappresentare un problema e, quindi, possiamo fare in modo di recuperare la percentuale di batteria rimanente per adottare politiche di upload dei nostri dati solo quando il telefono sarà sotto carica a fine giornata.
Per recuperare la percentuale di batteria rimanente nel dispositivo dobbiamo fare una chiamata a questa API:
var report = Battery.AggregateBattery.GetReport(); var percentuale = report.RemainingCapacityInMilliwattHours.Value / (double)report.FullChargeCapacityInMilliwattHours.Value;
Essendo su Windows 10, questa API è in grado di funzionare anche sui device desktop, che però non hanno la batteria. In questo caso, la chiamata riportata sopra fallirebbe e i valori riportati sarebbero tutti null, quindi è bene fare un controllo a priori se la batteria è effettivamente disponibile:
var stato = report.Status;
All'interno della proprietà Status siamo anche in grado di capire se l'eventuale batteria è in ricarica oppure no.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Utilizzare le collection expression in C#
Gestire undefined e partial nelle reactive forms di Angular
Cambiare la chiave di partizionamento di Azure Cosmos DB
Creare alias per tipi generici e tuple in C#
Utilizzare le Cache API di JavaScript per salvare elementi nella cache del browser
Filtrare e rimuovere gli elementi dalla cache del browser tramite le API JavaScript
Reactive form tipizzati con FormBuilder in Angular
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Hosting di componenti WebAssembly in un'applicazione Blazor static
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Gestire i null nelle reactive form tipizzate di Angular