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
Eseguire attività con Azure Container Jobs
Utilizzare domini personalizzati gestiti automaticamente con Azure Container Apps
Miglioramenti nell'accessibilità con Angular CDK
Definire lo stile CSS in base alle dimensioni del container
Generare file PDF da Blazor WebAssembly con iText
Reactive form tipizzati con FormBuilder in Angular
Autenticarsi in modo sicuro su Azure tramite GitHub Actions
Utilizzare Tailwind CSS all'interno di React: installazione
Effettuare delete massive con Entity Framework Core 7
Catturare la telemetria degli eventi di output cache in ASP.NET Core
Effettuare chiamate con versioning da Blazor ad ASP.NET Core
Routing statico e PreRendering in una Blazor Web App