Flutter 2 的新特性:最熱門的更新

已發表: 2021-03-11

您一定聽說過 Flutter 上週(2021 年 3 月 3 日)發布了第二次更新。 正如公司自己聲稱的那樣,這個版本是一個全面的社區努力,所以你可以期待一些面向開發人員的多汁功能。

Flutter 2.0 包含了新功能,並通過全新和現有功能改進了體驗。 讓我們去喝茶吧!

Flutter 2 的功能

我們將從全新的功能開始,介紹對現有 Flutter 功能的一些最美味的更新,最後研究品牌的一些更新計劃。

穩定的網絡應用

Flutter 是一個年輕但廣為人知的跨平台開發框架。 它的主要重點是從單一代碼庫構建原生 iOS 和 Android 應用程序。 Flutter 2 更進一步,將Web 應用程序添加到完全支持的環境列表中。

對於企業主來說,這意味著在更短的時間內接觸到更廣泛的受眾

對於工程師而言,單一代碼庫有望顯著促進和加快開發過程

顫振 2.0。 - 為跨 Android、iOS 和 Web 的跨平台開發而穩定

什麼最重要

將 Flutter 應用到跨平台的關鍵優勢在於它強調了在編寫單個代碼的同時保持體驗盡可能接近原生應用程序的能力。 現在,隨著 Web 平台的完全穩定,您可以期待使用 Flutter 構建豐富的交互式 Web 應用程序的熱潮。

最新更新主要關註三種可能的應用場景:

  • PWAs – 結合最好的移動和網絡的漸進式網絡應用程序;
  • SPA——在使用過程中不需要重新加載頁面的單頁應用程序;
  • 移動到網絡——現在用 Flutter 編寫的現成應用程序可以很容易地翻譯成網絡

盒子裡裝了什麼?

新的和更好的,Flutter 2.0 在看似簡單直觀的框架下有一個豐富的填充物。 對於 Web 應用程序,兩個最重要的技術方面是:

  • 渲染保真度:基於 CanvasKit 的新渲染器有望顯著提高性能並支持現有的 HTML 渲染器。
  • 特定於 Web 的功能:自定義 URL、鏈接小部件、基於畫布的文本測量和自動填充只是 Flutter 現在可用的一些解決方案。 您可以在 Flutter 的網絡支持博客文章中了解有關所有新功能的更多信息。

Flutter Web 應用程序還有更多值得期待的地方

雖然 Web 應用程序絕對是 Flutter 跨平台庫的一個很好的補充,但在這個版本中仍然缺少某些功能。 特別是,我們希望在“應用程序”中看到更多的“網絡”。 以下是 Flutter 團隊仍然有時間打得恰到好處的一些主要缺失點:

  • 缺乏與 SEO 相關的解決方案。 當您想到“網絡”時,首先想到的就是谷歌和搜索引擎優化。 WordPress 知道這一點,並投入了大量精力來完善其 Yoast 插件。 Flutter 2 不提供任何可以促進的功能,更不用說啟用SEO。
  • 初始網頁加載時間。 當談到網頁加載所需的時間時,很明顯,越快越好。 客戶的跳出率 ( Forbes ) 和 Google 的 SEO 偏好 ( SEMRush ) 都告訴我們,一秒或更短的加載速度是更可取的。 然而,由於 Flutter web 需要整個 Flutter 引擎在加載你的 web 應用程序之前啟動,它往往會變得更慢,流量也會變得更重。

還有更多工作需要完成,然而,即使僅從這次更新中我們也可以看出,Flutter 團隊不打算很快放慢速度!

早期版本:桌面支持

現在,這個還沒有完全穩定,所以要準備好一路上的一些驚喜。 從 21 年 3 月上旬開始,您可以將桌面設置為 Flutter 應用程序的部署目標。 這裡重要的是,Flutter 桌面幾乎與它的主要語言——Dart 密不可分,Dart 最近更新到了 Dart 2.12。

Flutter 桌面主要功能

正如 Flutter 的 Chris Sells 所強調的,這個“測試版快照”的主要目標是“確保文本編輯在每個支持的平台上都像原生體驗一樣運行”( Medium )。 這可以通過文本選擇旋轉TextField 小部件等基本功能實現。

Flutter 2 帶來的另一個重要改進是ReordableListView ,它極大地促進了開發人員移動項目的過程。 在這裡,功能是通過更新的滾動條和方便的把手來實現的,以實現輕鬆的拖放體驗。

發布桌面應用程序所需的文檔也已完全更新。 如果你想親自嘗試一下——請參閱 Flutter 文檔的完整說明。

Flutter Folio:平台自適應應用

為了確保在 Flutter 中構建的一款應用能夠同樣適用於他們可能計劃覆蓋的所有 6 個平台(即 iOS、Android、Web、Windows、macOS 和 Linux),剪貼簿應用程序——Flutter Folio——已經到來。

這是一個在各種尺寸的屏幕上看起來都不錯的應用程序示例,它利用了觸摸、鍵盤和鼠標輸入,並且確切地知道如何適應每個平台的具體情況。 Folio 的源代碼現已在 GitHub 上提供。

Google 移動廣告:測試版

另一個讓數字營銷人員興奮的測試版! 適用於 Flutter 的 Google Mobile Ads SDK 是一個新插件,專門用於移動設備的疊加層、橫幅和原生廣告。 它對 Ad Manager 和 Admob 的統一支持使其適用於廣告商,無論發布商如何。

改進現有的 Flutter 功能

顫振功能

儘管 Flutter 在投資 Web 應用程序和桌面穩定性方面採取了一些認真的步驟,但這並不意味著他們已經忘記了基礎知識。 讓我們看一下對框架原始組件的一些最需要的更改

儘管 Flutter 在投資 Web 應用程序和桌面穩定性方面採取了一些認真的步驟,但這並不意味著他們已經忘記了基礎知識。 讓我們看一下對框架原始組件的一些最需要的更改

跨平台開發服務圖標

使用 Flutter 構建殺手級跨平台解決方案

學到更多

iOS 的更多功能

最重要的公告是,在無數次請求之後,Flutter 終於增加了直接從命令行構建 IPA的可能性,而無需依賴 Xcode。 此外,Cupertino 設計語言的實現已經更新了一些新的 UI(例如 iOS 搜索控制台)。

新的 Flutter 小部件

此版本引入了兩個新的小部件:AutocompleteCore 和 ScaffoldMessenger。 第一個完全符合您的預期,並通過長期要求的自動完成功能簡化了編碼過程。 ScaffoldMessenger 致力於解決與SnackBar 相關的問題

添加到應用程序實例

從一開始,Flutter 團隊就考慮周全,並確保您可以利用他們的最新更新,即使開發一個全新的應用程序目前不在您的待辦事項清單上。

Add-to-App 允許開發人員在不同的移動平台上重用他們的代碼。 然而,更重要的是,Add-to-App 可以輕鬆地將 Flutter 代碼添加到現有的原生應用程序中,從而允許開發人員在不同的移動平台上重用他們的代碼。 Flutter 2 使用新的 API 將靜態內存的成本降低到每個實例大約 180kB。

生態系統更新

Flutter 的最初目標不僅僅是創建一個方便的框架——他們的目標是通過簡化核心流程為開發人員提供更好的體驗。 這就是為什麼以前版本中已有的大量插件和工具都有自己的升級也就不足為奇了。

這包括最流行的插件,如 Core、Authentication、Cloud Firestore 等,以及社區構建的 Flutter Plus 插件。 您可以在此處查看 Flutter 官方 Firebase 插件的完整更新列表,並隨時在此處查看 Flutter 社區加插件。

業界對 Flutter 2.0 版本的反應

Flutter 2 不僅在發布後不到一周的時間內作為一個更成熟、更多功能的框架問世,而且一些大型國際公司已經決定長期致力於它!

豐田將在其車輛中使用 Flutter 2

這一切都始於 Ubuntu 在 2021 年 3 月 3 日宣布將 Flutter 作為其應用程序的默認選擇。然而,最響亮的消息無疑是豐田最近決定將 Flutter 用於其車載信息娛樂系統。 此外,據說該項目是該行業最具創新性的項目之一,因為 Toyota-Flutter 合作將使用 Embedder API。

當然,隨著 Flutter 的不斷改進,會有更多品牌效仿豐田的做法。 還有一個問題要回答。

Flutter 2 是什麼意思?

首先,Flutter 2 是對所有從一開始就不相信它的仇恨者的及時回應。 這麼多獨立組件的發布證明了谷歌(作為 Flutter 框架背後的主要名稱)和社區都相信他們所做的事情。 如果您不依賴數字,但需要看到現實生活中的結果來擁抱某些東西 - 此更新是您的警鐘。

如果您仍然不確定 Flutter 是否比 Kotlin Multiplatform (KMM) 更好,或者在 Flutter 與 React Native 的比較中是否有機會 - Flutter 2 應該消除任何疑慮。 如果你擔心這個框架還太年輕而沒有堅實的基礎——相信 Flutter 開發公司,它在這一切開始時就在那裡。

與 Miquido 合作,充分利用 Flutter 2.0 的潛力!