Le Progressive Web Apps (PWA) stanno conquistando il settore grazie alla loro facilità d’uso e al rapido processo di sviluppo. Se combinati con le funzionalità di notifica push, questi PWA diventano una centrale elettrica per sviluppatori personali e professionisti allo stesso modo.
Oggi continueremo la nostra esplorazione delle PWA imparando cosa rende le notifiche push così utili e mostrandoti come implementare le funzionalità Push di base nelle tue app. Alla fine, conoscerai le migliori pratiche di Push e avrai creato un punto di partenza del servizio Push per il tuo progetto.
Hai appena iniziato con le PWA? Leggi la prima parte di questa serie per apprendere le nozioni di base prima di continuare qui: Crea app moderne e offline con le app Web progressive. Gli addetti ai servizi in background consentono di inviare messaggi offline. L’app utilizza l’API Push per gestire un service worker che ascolta costantemente notifiche push speciali dal server dell’app. Una volta ricevuto un messaggio push, l’operatore del servizio “invia” la notifica all’utente se l’app è attualmente in esecuzione o meno.
Diversamente dalle app tradizionali, le progressive web app sono un ibrido tra le normali pagine web e le applicazioni mobili. Il termine “progressive” si riferisce al fatto che introducono nuove feature e dal punto di vista dell’esperienza utente inizialmente sono percepite come normali siti web ma progressivamente si comportano sempre più come app mobili, tra l’altro multipiattaforma.
Sono la vera chiave per le esperienze avanzate che una PWA può offrire. Un service worker è uno script che il browser esegue in background, separato da una pagina web, per utilizzare funzioni che non richiedono una pagina web o un’interazione da parte dell’utente.
Oggi i SW includono già funzioni quali le notifiche push e la sincronizzazione in background. In futuro supporteranno funzioni quali la sincronizzazione periodica o il geofencing. La funzione principale è la capacità di intercettare e gestire le richieste di rete, compresa la gestione programmatica di una cache delle risposte. Si tratta di un’API che consente di supportare esperienze offline offrendo agli sviluppatori il controllo completo dell’esperienza.
Esistono diverse tecnologie per la creazione delle Progressive Web App, principalmente basate su JavaScript, con diverse caratteristiche.
Tra le principali abbiamo: React, Polymer, Angular, Ionic e Accelerated Mobile Pages
Le app native classiche forniscono una esperienza sicuramente ricca e ottime performance sotto molti punti di vista però hanno lo svantaggio dell’ occupazione di spazio nel dispositivo e la mancanza di aggiornamenti in tempo reale. Inoltre soffrono della scarsa indicizzazione e quindi visibilità nei motori di ricerca. Una web app tradizionali invece è carente sugli altri aspetti come la mancanza di eseguibile compilato nativamente oltre alla dipendenza esclusiva dalla connessione del dispositivo che potrebbe essere scarsa o assente.