Ogni applicazione Windows Phone dispone di un'icona, chiamata tile, che è possibile personalizzare attraverso il file WMAppManifest.xml della soluzione di Visual Studio. In realtà è un'immagine di sfondo, solitamente una PNG delle dimensioni di 173x173px, sulla quale poi viene applicato il titolo dell'applicazione.
Poiché le applicazioni di terze parti non possono lavorare in background, in Windows Phone si affida l'informazione al toast e al tile, i quali possono essere mostrati e cambiati attraverso le push notification. E' possibile cambiare quest'immagine anche con un metodo alternativo che non richiede un push dalla contro parte server. La classe ShellTileSchedule permette di programmare ad intervalli regolari o solo una volta, di cambiare l'immagine in background, ad un preciso orario, il tutto sulla base di un URI che restituisce l'immagine.
Per cambiare ad intervalli regolari di un'ora l'immagine bastano poche righe:
ShellTileSchedule schedule = new ShellTileSchedule(); // EveryDay, EveryWeek, EveryMonth schedule.Interval = UpdateInterval.EveryHour; // Interval o OneTime schedule.Recurrence = UpdateRecurrence.Interval; // Ogni un'ora da adesso schedule.StartTime = DateTime.Now; schedule.RemoteImageUri = new Uri("http ://miosito/miaIcona.png"); // Avvio lo schedule. Stop per fermare schedule.Start();
Per non consumare la batteria l'intervallo minimo consentito è di un'ora e non è possibile indicare come StartTime un'intervallo inferiore all'ora attuale per tentare di aggiornare la tile prima di un'ora. Dato che l'URI è una risorsa remota, diventa prezioso inserire in essa informazioni, ad esempio tramite query string, che permettano di personalizzare l'icona in seguito ad un'elaborazione server che possa poi restituire dinamicamente l'immagine.
Occorre infine prestare attenzione che l'immagine non deve superare gli 80KB, ne il download superare i 15 secondi. Se questi limiti vengono superati per tre volte, la programmazione viene rimossa.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Applicare un filtro per recuperare alcune issue di GitHub
Escludere alcuni file da GitHub Secret Scanning
Utilizzare Containers in .NET Aspire
Generare una User Delegation SAS in .NET per Azure Blob Storage
Autenticazione di git tramite Microsoft Entra ID in Azure DevOps
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Recuperare le subissue e il loro stato di completamento in GitHub
Ridurre il reflow cambiando il CSS
Gestire i dati con Azure Cosmos DB Data Explorer
Ordine e importanza per @layer in CSS
I più letti di oggi
- Segnala questa pagina ad un amico
- SQL Server 2005 in beta 2
- Gestione CSS in Blazor con .NET 9
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- Gestione ciclo di vita in .NET Aspire
- Calcolare il resto di una divisione
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!