Push Notification, Live Tile e Background Agent

942 views

Published on

Sessione"Push Notification, Live Tile e Background Agent" tenuta da Luca Cestola all'evento Win8@Work di DomusDotNet

Published in: Technology
1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total views
942
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
5
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide

Push Notification, Live Tile e Background Agent

  1. 1. Live Tile, Background Agent e Push Notification Luca Cestola luca.cestola@domusdotnet.org @lucacestola
  2. 2. Un approccio differente Con Windows 8 la nostra applicazione ha diversi modi per comunicare attivamente informazioni all’utente. Dove? • Start screen • Lock screen Come? • Tiles • Toast • Badge
  3. 3. Start screen e Lock screen Start screen • È dove risiedono le Tiles delle applicazioni. • Si può organizzare la posizione e la grandezza delle Tiles e decidere quali includere o escludere. • Veicola informazioni che hanno a che fare con le nostre applicazioni Lock screen • In maniera ridotta, offre comunque la possibilità alle nostre applicazioni di comunicare con l’utente alcune informazioni utili.
  4. 4. Tiles: cos’è?“Una tile è la rappresentazione di una app sullo startscreen” Rappresenta un punto di ingresso alla nostraapplicazione, ma è anche veicolo attivo di informazioniverso l’utente. • Principale o secondaria • Due grandezze: Square o Wide • Se esistono entrambe, l’utente può scegliere quale grandezza visualizzare. • Zero o più tile secondarie • Ogni tile secondaria può offrire un diverso contenuto e punto di ingresso all’applicazione
  5. 5. Live Tiles: perché?Investire del tempo nelle Live Tiles perché: • Rappresentano un elemento distintivo per la nostra app. • Posizionamento migliore sullo Start Screen • Una Live Tile è più accattivante (ed utile) di una statica • Se l’aspetto non è accattivante e le informazioni non sono utili l’utente la Tile verrà posizionata in fondo allo Start Screen 
  6. 6. Elementi grafici della tile Template Brand grafico Badge o testuale (Numeric o Glyph)
  7. 7. Live Tiles: perché?Caratteristiche da tenere in considerazione: • Non è solo una questione di «gradevolezza» • Contenuti nuovi e frequenti comunicano che la nostra applicazione è «viva» • Informazioni personalizzate tramite ciò che conosciamo dell’utente (app settings o info presenti sui social) • Informazioni contestualizzate (ad esempio localizzazione GPS)
  8. 8. Aspetto grafico: DimensioniLe tiles possono avere aspetti graficidifferenti. Si devono utilizzare itemplate predefiniti. • Square Tile • Contenuti e testo ridotti • Possono contenere un badge e un glyph o un numero • Wide Tile • Più spazio e di conseguenza più immagini o testo
  9. 9. Aspetto grafico: Coerenza
  10. 10. Aspetto grafico: Errori da evitareIl brand o il nome dell’applicazione hanno unloro apposito posizionamento, evitate diripetere tali informazioni in altre posizioni
  11. 11. Aspetto grafico: TemplatesTile template catalog:http://msdn.microsoft.com/en-us/library/windows/apps/hh761491.aspx
  12. 12. Toast• É una notifica popup che appare in alto a destra sullo schermo.• Template come per le tiles http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.notifications.toasttemplatetype• Uno è poco due sono troppi  da usare per comunicazioni importanti senza esagerare se non si vuole che l’utente le disabiliti.
  13. 13. Demo: Tiles• Package.appxmanifest• Tile primaria Square o Wide• Tile secondarie
  14. 14. Aggiornamenti tramite notificaI contenuti delle tiles possono essereaggiornati tramite notifiche, in uno deiseguenti modi:• direttamente dall’ app• da un Task in background• da un Push Notification Message
  15. 15. Xml di notificaLa notifica avviene tramite uno specifico formato xmlhttp://msdn.microsoft.com/en-us/library/windows/apps/br212853.aspxLa libreria WnsRecipe installabile tramite NuGet offre unmodel per semplificare la creazione delle notifiche perTile, Toast e Badge
  16. 16. Demo: Notifiche• Tile• Live tile• Toast• Badge
  17. 17. Background Tasks • Windows 8 consente alle Store App di eseguire operazioni anche se non sono correntemente attive (Running). • L’esecuzione del Background task, una volta registrato, è gestito dal sistema operativo • Tali operazioni sono eseguite in un host esterno all’applicazione (BackgroundTaskHost.exe) o all’interno della nostra App a seconda delle impostazioni o delle condizioni correnti della nostra App (Running, Suspended, Terminated) • I task sono attivati attraverso Trigger specifici per ogni tipologia di evento e possono avere delle precondizioni
  18. 18. Background Task: Triggers Background task trigger type Trigger event When the background task is triggered ControlChannelTrigger ControlChannelTrigger On incoming messages on the control channel. MaintenanceTrigger MaintenanceTrigger It’s time for maintenance background tasks. PushNotificationTrigger PushNotificationTrigger A raw notification arrives on the WNS channel. SystemEventTrigger InternetAvailable The Internet becomes available. SystemEventTrigger SmsReceived A new SMS message is received by an installed mobile broadband device. SystemEventTrigger UserAway The user becomes absent. SystemEventTrigger UserPresent The user becomes present. TimeTrigger TimeTrigger A time event occurs.
  19. 19. Background Task: Task Conditions Background task condition The condition that must be satisfied InternetAvailable The Internet must be available. InternetNotAvailable The Internet must be unavailable. SessionConnected The session must be connected. SessionDisconnected The session must be disconnected. UserNotPresent The user must be away. UserPresent The user must be present.
  20. 20. Background Task: Host types Background task trigger type Host executable TimeTrigger Cannot be specified (default system host) SystemTrigger Cannot be specified (default system host) MaintenanceTrigger Cannot be specified (default system host) PushNotificationTrigger Application provided exe OR Not specified (default system host) ControlChannelTrigger Application provided exe
  21. 21. Ciclo di vita di un Background Task
  22. 22. Demo: Background Task• Background Task• Task progress e completion• Riassociazione handlers eventi
  23. 23. Push notification: WNS • Il Windows Push Notification Services (WNS) permette l’invio di notifiche alle nostre Windows Store App installate su un determinato device. • Tramite WNS un servizio cloud o classico può inviare alla nostra Store App notifiche toast, tile, badge o raw. • Il server ottiene un canale di comunicazione valido verso il WNS tramite il PackageSecurityidentifier ed il ClientSecret associati all’app.
  24. 24. Push notification: Come funziona?
  25. 25. Demo: Push Notifications• Richiesta di un Canale per le notifiche al client• Simulazione di invio di notifiche da server
  26. 26. Riferimenti e risorse • White papers http://msdn.microsoft.com/en-us/library/windows/apps/hh465413.aspx • Guidelines and checklist for tiles and badges http://msdn.microsoft.com/en-us/library/windows/apps/hh465403.aspx • Guidelines and checklist for background tasks http://msdn.microsoft.com/en-us/library/windows/apps/hh977043.aspx • Guidelines and checklist for push notifications http://msdn.microsoft.com/en-us/library/windows/apps/Hh761462.aspx • Samples http://code.msdn.microsoft.com/windowsapps
  27. 27. Grazie agli sponsor

×