Google rilascia Flutter 2: cosa c'è di nuovo in esso

Pubblicato: 2021-04-02

Google ha lanciato la versione 2.0 di Flutter, un kit di sviluppo dell'interfaccia utente open source che consente ai costruttori di app di creare applicazioni multipiattaforma. L'aggiornamento mette in evidenza un pacchetto completamente nuovo di funzionalità e una portabilità migliorata di Flutter per supportare le app su piattaforme diverse.

Oggi esploreremo ciò che Flutter 2 ha da offrire. Leggi il blog fino alla fine.

Flutter 2: una panoramica completa

Supporto Web

Il supporto web di fascia alta di Flutter è la dichiarazione più cruciale nell'evento di lancio di Flutter 2 a Flutter Engage. In precedenza, le fondamenta del web erano principalmente incentrate sui documenti. Ora, le ricche API della piattaforma facilitano lo sviluppo di applicazioni sofisticate utilizzando le API di disegno, la grafica 2D e 3D con accelerazione hardware e il layout flessibile.

Flutter 2 offre un supporto Web stabile che rende la stessa esperienza sul Web che si potrebbe ottenere su dispositivi mobili. Gli esperti di servizi di sviluppo di app mobili possono creare app per Android, iOS e browser utilizzando la stessa base di codice. È possibile compilare codici Flutter esistenti scritti in Dart in un'esperienza Web eccellente perché, con Flutter 2, il Web è solo un altro dispositivo di destinazione per la tua app.

La nuova versione si concentra su 3 scenari di app:

  • App a pagina singola (SPA)
  • App Web progressiva (PWA)
  • Portare le app mobili esistenti basate su Flutter sul Web e offrire la stessa esperienza

Flutter non si traduce negli equivalenti HTML dei suoi widget. Piuttosto, il motore web di Flutter offre una scelta tra due renderer:

  1. Un renderer CanvasKit che utilizza WebGL e WebAssembly per eseguire il rendering dei comandi di disegno di Skia nell'area di disegno del browser
  2. Un renderer HTML ottimizzato per un'ampia compatibilità e dimensioni

Viene inoltre creata una demo di Flutter Plasma per mostrare la facilità di creare un'esperienza grafica web sofisticata con Dart che può essere eseguita senza problemi su dispositivi mobili e desktop.

La community ha anche aggiunto alcune funzionalità specifiche per il Web come il riempimento automatico del testo, i manifesti PWA e il controllo sugli URL di routing e barra degli indirizzi.

Supporto desktop

È ancora in uno stato beta, la versione stabile potrebbe essere rilasciata entro la fine dell'anno. Tuttavia, diamo un'occhiata a ciò che ha da offrire.

Per i browser desktop, la community ha aggiunto scorciatoie da tastiera, barre di scorrimento interattive, supporto per screen reader per una facile accessibilità su Chrome OS, Windows e macOS e ha migliorato la densità dei contenuti predefinita in modalità desktop.

Google ha apportato numerosi miglioramenti: portando Flutter desktop a una qualità eccezionale, assicurando che la modifica del testo offra un'esperienza nativa su ciascuna piattaforma supportata, integrando funzionalità di base come i punti pivot di selezione del testo, ecc. Ha anche aggiunto un menu contestuale integrato a TextField e Widget TextFormField per i linguaggi di design Cupertino e Material. Le maniglie di presa vengono aggiunte al widget ReorderableListView.

Il widget della barra di scorrimento aggiornato fornisce varie funzioni accattivanti che puoi utilizzare sul desktop. Flutter 2 consente anche la gestione degli argomenti della riga di comando per le app Flutter. In questo modo, è possibile utilizzare operazioni come il doppio clic su un file di dati in Esplora file di Windows per aprire un file nell'app.

Correzione dello sfarfallio

Flutter Fix è una raccolta di varie cose. Ha una riga di comando esclusiva dello strumento Dart CLI noto come Dart Fix. Aiuta a cercare l'elenco delle API obsolete e ad aggiornare il codice con queste. Consente inoltre di accedere all'elenco delle correzioni accessibili fornito con Flutter SDK.

Inoltre, ha un set aggiornato di estensioni Flutter per Android Studio IDE, VScode e IntelliJ che possono presentare un elenco simile di soluzioni accessibili e aiutare gli sviluppatori a modificare i codici semplicemente usando il mouse.

Portabilità estesa

Google mette in evidenza 3 recenti collaborazioni che presentano la portabilità massimizzata di Flutter.

In primo luogo, Microsoft estenderà il suo supporto per Flutter. Oltre alla recente collaborazione per offrire supporto Windows di qualità premium in Flutter, Microsoft contribuirà anche al motore Flutter che facilita lo sviluppo di app per dispositivi Android pieghevoli.

In secondo luogo, Canonical sta collaborando con Google per aver portato Flutter sul desktop. Supporterà lo sviluppo e la distribuzione di app su Linux. Canonical promette di offrire un'esperienza superba su diverse configurazioni hardware.

Infine, Toyota, uno dei principali produttori di veicoli, ha dichiarato di adottare alcune strategie rivoluzionarie per offrire un'esperienza digitale di nuova generazione alle auto creando vari sistemi di infotainment abilitati da Flutter. Toyota ha cercato di assumere lo sviluppatore Flutter grazie al sistema touch a livello di smartphone di Flutter, all'iterazione rapida, all'ergonomia dello sviluppatore e alle prestazioni elevate costanti. Le API integrate di Flutter consentiranno a Toyota di personalizzare Flutter e soddisfare i requisiti della costruzione di sistemi di infotainment all'avanguardia.

Aggiungi all'app

Flutter 2 mira a ridurre il carico di lavoro degli sviluppatori di qualsiasi agenzia di sviluppo di app garantendo nel contempo risultati di alta qualità. Aggiungi all'app è un'altra funzionalità per evidenziare tale obiettivo.

Gli sviluppatori possono aggiungere Flutter a un'app Android o iOS esistente. La funzione Aggiungi all'app è un ottimo modo per riutilizzare il codice Flutter su entrambe le piattaforme durante l'archiviazione del database nativo corrente. Con questa modifica Google suggerisce una possibile integrazione del motore Flutter nelle app native.

Folio svolazzante

Come abbiamo già discusso, Flutter ora supporta 3 piattaforme: Android, iOS e Web e altre 3 in versione beta: Windows, Linux e macOS. Come è possibile creare un'app che cambia in più moduli (schermi piccoli, grandi e medi), più idiomi (web, mobile e desktop) e più modalità di input (tastiera, mouse e touch)?

Flutter Folio dà una risposta a questa domanda.

Flutter Folio è un'app di scrapbooking progettata per offrire le capacità di Flutter di creare applicazioni che funzionano senza problemi su ogni piattaforma e dispositivo: Android, iOS, Mac, Windows, Linux e Web. È un perfetto esempio di app adattiva, realizzata in collaborazione con gskinner e il team Flutter.

Flutter DevTools

Flutter DevTools viene utilizzato per il debug delle app Flutter. Viene introdotta una nuova funzionalità che si concentra su qualsiasi problema anche prima di avviare DevTools è la possibilità per IntelliJ, Android Studio o Visual Studio Code di notare ogni volta che c'è un'eccezione e offrire di presentarla in DevTools in modo da avviare il processo di debug.

Durante l'esecuzione di DevTools, i nuovi badge di errore nelle schede aiutano a rintracciare vari problemi nell'app.

In DevTools è stata aggiunta un'altra nuova funzione che consente di vedere facilmente un'immagine a una risoluzione maggiore di quella in cui è presente. Aiuta a ridurre l'utilizzo di memoria extra e le dimensioni dell'app. Gli sviluppatori possono consentire a Inverti immagini sovradimensionate in Flutter Inspector di attivare questa funzione.

Google ha anche aggiunto la possibilità di visualizzare layout fissi. Ciò consente agli sviluppatori di eseguire il debug di diversi tipi di layout.

Altre funzionalità disponibili in Flutter DevTools 2 includono quanto segue:

  • La vista Prestazioni è ora rinominata in CPU Profiler. Allo stesso modo, la vista Timeline viene rinominata in Performance. Le modifiche mettono in evidenza le funzionalità che offrono.
  • I nuovi grafici di visualizzazione della memoria sono più piccoli, più facili da usare e più veloci. Incorpora un nuovo hovercard che spiega le attività in un momento specifico.
  • Le funzionalità di ricerca e filtro vengono aggiunte alla scheda Registrazione.
  • I dati FS medi e vari miglioramenti dell'usabilità sono inclusi nel grafico Flutter Frames.
  • La griglia di temporizzazione è inclusa nei grafici di fiamma di CPU Profiler.
  • Il modulo Tracklogs viene avviato in modo che gli sviluppatori possano controllare la cronologia di registrazione totale quando lo avviano.
  • Le richieste di rete non riuscite verranno richiamate nel profilatore di rete per una correzione immediata.

Annunci per cellulari di Google per Flutter

Google annuncia il lancio della versione beta di Google Mobile Ads for Flutter. Il nuovo SDK funziona bene con AdMob e AdManager per offrire diversi formati di annunci, incorporando annunci video banner, nativi, interstitial e con premio.

Google ha anche dichiarato vari aggiornamenti ai plug-in Flutter per i principali servizi Firebase come Cloud Messaging, Cloud Firestore, Cloud Function, Authentication, Cloud Storage, Crashlytics, integrando l'assistenza per la sicurezza del suono e un aggiornamento del Cloud Messaging Package.

Dardo 2.12

Questa è l'ennesima rivelazione significativa di Google. Dart 2.12 supporta la sicurezza nulla del suono. Ha il potenziale per rimuovere qualsiasi eccezione di riferimento nullo. In questo modo, garantisce in fase di sviluppo e runtime che i tipi possano contenere solo valori null se uno sviluppatore lo seleziona espressamente.

L'aggiornamento include anche un'applicazione coerente di FFI (Foreign Function Interface). Consente agli sviluppatori di utilizzare la libreria dart:ffi per chiamare le API C native.

È ora di concludere

Come puoi vedere, Flutter 2 sta apportando alcuni cambiamenti rivoluzionari nel regno dello sviluppo di app. Il confine tra l'utilizzo di un Web e di un'app mobile sta gradualmente svanendo a favore dell'offerta di un'esperienza utente eccellente su piattaforme e dispositivi diversi. Se vuoi seguire il flusso, è tempo di creare un'app con Flutter 2!