La versione breve: quali sono le Web App progressive?
Ecco il breve riepilogo: Google, Microsoft, Mozilla e altre società stanno lavorando su un nuovo standard per le applicazioni web moderno. Anche Apple sta seguendo e implementando il supporto per questo. Queste applicazioni sono app Web, ma si comportano più come app native. Come le app web esistenti, saranno ospitate direttamente sul loro sito Web associato. Gli sviluppatori possono aggiornarli direttamente sul proprio server web senza inviare tali aggiornamenti a diversi negozi di app diversi e la stessa app verrà eseguita su tutti i browser e le piattaforme.
Quando si installa un'applicazione web progressiva, viene visualizzata una schermata principale, una barra delle applicazioni o un collegamento sul desktop che avvia l'app (a seconda della piattaforma). L'app si caricherà rapidamente e includerà supporto offline, notifiche push, supporto per la sincronizzazione in background e altri gadget moderni.
Queste app possono anche utilizzare le tecnologie web esistenti per accedere ai servizi di localizzazione, alla webcam e ad altre funzioni che normalmente associamo alle app native. Naturalmente, le app devono chiederti e ottenere il tuo permesso prima di accedere a queste cose.
La versione tecnica: come funzionano?
Queste app avranno la propria finestra e collegamento sulla barra delle applicazioni (su Windows 10 e su qualsiasi cosa che esegue Chrome) o un'icona sulla schermata iniziale (su dispositivi Android e altri smartphone). Quando vengono aperti, vengono caricati rapidamente grazie all'API Cache e IndexedDB, che memorizza le risorse e i dati dell'app sul dispositivo, consentendo loro di funzionare anche quando sono offline. Tecnologie come i lavoratori dei servizi e le notifiche push permetteranno all'app di eseguire attività in background come la sincronizzazione e l'invio di notifiche anche quando non sono in esecuzione, come un'app nativa. L'API Fetch rende più veloce e semplice l'applicazione per richiedere dati. Hanno un file manifest app Web, che fornisce un nome, un'icona, un autore e una descrizione utilizzati durante l'installazione dell'app nella schermata principale o desktop. Vengono sempre serviti tramite HTTPS crittografato, il che significa che sono protetti e che i dati non possono essere manomessi durante il transito.
Le Web App progressive non sono come le app di Google Chrome Packed o le Web App ospitate da Microsoft. Questi richiedevano che l'app venisse "impacchettata" come un file e inviata a un app store. L'intera app viveva in un piccolo bundle offline e gli utenti dovevano installarlo dal Chrome Web Store o da Windows Store. Questi erano anche specifici per piattaforma e funzionavano solo su Chrome o Windows. Lo sviluppatore ha dovuto modificare i file dell'app offline e inviare una nuova versione all'app store per aggiornarlo.
Invece, i PWA non vengono mai inseriti in un file offline. Come le tradizionali app Web che usiamo oggi, sono ospitate interamente sui server dell'applicazione. Se uno sviluppatore desidera aggiornare la sua app web progressiva, la aggiorna esattamente come farebbe per aggiornare l'app Web sui propri server. Tutte le piattaforme e i browser che supportano gli PWA possono utilizzare le stesse app Web progressive.
I PWA possono essere elencati negli app store per facilitare la scoperta e l'installazione, ma l'app store punta solo ai server delle app Web. Anche se un'app non è compatibile con le norme relative ai contenuti di un app store, gli utenti potranno trovarla e installarla direttamente dal proprio browser.
Perché questo è importante
Ad esempio, quando questo lavoro è terminato, Google potrebbe consentire a servizi come Gmail e Google Calendar di funzionare come PWA. Ciò significa che sarebbero eseguiti come applicazioni in stile nativo su Windows 10 ed essere elencati in Windows Store. Ciò farebbe molto per risolvere il problema dell'applicazione Windows Store, in quanto Google non desidera supportare la Universal Windows Platform (UWP) di Microsoft. Altri sviluppatori che non volevano creare app UWP separate sarebbero improvvisamente in grado di supportare Windows 10 con PWA in stile nativo.
Gli sviluppatori avrebbero un modo più semplice per far funzionare le loro applicazioni web in un modo più potente e integrato su un'ampia varietà di dispositivi senza saltare attraverso i circuiti di app store. Le app Web che funzionano ovunque sarebbero in grado di competere meglio con le app native che funzionano su un'unica piattaforma. Una società che ha solo le risorse per creare un'unica app potrebbe creare un PWA e supportare tutto, piuttosto che creare app separate per iOS, Android, Windows e il web.
Inoltre, grazie agli sviluppatori di file manifest Web App, i motori di ricerca saranno in grado di eseguire la scansione del Web e trovare facilmente i PWA disponibili online. Ciò renderà le PWA facilmente individuabili, proprio come le pagine web.
Su quali piattaforme sono supportate?
Con il prossimo aggiornamento di Windows 10, l'aggiornamento di aprile 2018, nome in codice di Redstone 4, che verrà rilasciato il 30 aprile, Microsoft sta abilitando il supporto per gli PWA. Come su altre piattaforme, è possibile accedere al sito Web di PWA e installarlo tramite Microsoft Edge. Tuttavia, Microsoft annuncerà anche le Web App progressive nello Store per una facile installazione. Gli sviluppatori possono elencare le proprie app nello Store, ma Microsoft utilizzerà Bing per trovare buoni PWA sul Web e elencarli automaticamente. Verranno comunque ospitati normalmente sul loro sito Web e aggiornati dallo sviluppatore, ma Microsoft sta rendendo più facile trovarli e installarli. Non avrai mai nemmeno bisogno di aprire il browser Edge per trovare, installare ed eseguire un PWA su Windows 10. Ciò dovrebbe aiutare a far apparire il Windows Store, ma sembra una cattiva notizia per la piattaforma dell'app UWP di Microsoft. Perché molti sviluppatori realizzano un'app UWP quando un PWA funziona correttamente su più sistemi operativi?
Su Google Chrome, sia per Windows, Mac, Linux o Chrome OS-PWA stanno per sostituire la piattaforma "Chrome Apps" fuori produzione. Google sostiene che il supporto per l'installazione desktop di PWA dovrebbe arrivare "a metà del 2018", approssimativamente. Quindi quelli PWA funzioneranno con Chrome sul desktop. Questa funzione è già stata testata nella versione di sviluppo instabile di Chrome, denominata Canary.
Su Android, Google Chrome supporta già l'installazione di PWA, così come altri browser mobili come Mozilla Firefox, Opera e il browser Samsung. Google sta lavorando su una tecnologia denominata WebAPK che consentirà ai PWA di essere trasformati in file APK (file di app Android) e installati sul dispositivo, come altre app. Il project manager di Chrome ha suggerito che anche i PWA possono essere aggiunti al Play Store.
Anche se Apple non è stata un sostenitore o un partecipante vocale, ora sta aggiungendo anche le funzionalità PWA al browser Safari.
Il 2018 dovrebbe essere un anno importante per gli PWA, in particolare su Windows 10, in cui potrebbero aiutare Microsoft a colmare il divario tra le app e ad avere più app native.