Flutter 2.2 現已發佈!

在本次 Google I/O 2021 大會 上,我們正式發佈了 Flutter 2.2。Flutter 2.2 是我們最新版的開源工具包,可讓開發者立足單個平台構建適合任何設備的精美應用。Flutter 2.2 是迄今為止最出色的 Flutter 版本。藉助更新後的功能,開發者能更便利地通過應用內購買、支付方式和廣告將其應用變現,還能連接到雲服務和 API 來擴展應用的功能;而藉助工具和語言功能,開發者能夠消除一整類的錯誤,增強應用性能並縮減軟件包大小。

在 Flutter 2 的基礎上打造而成

Flutter 2.2 在 Flutter 2 的基礎上打造而成,並將 Flutter 的根基從最初的移動設備擴展到 web、桌面設備以及嵌入式設備。其絕無僅有的設計是為了滿足環境計算世界的需求,因為在這樣的世界中,用戶有各式各樣、尺寸不一的設備,而用戶期望在其日常生活中的各式設備上獲得一致的美好體驗。Flutter 2.2 的存在,使得企業、初創團隊和企業家們都可以創建高質量的解決方案,充分發揮潛在市場的潛力,讓目標平台不再成為限制因素,而只需專註於尋找創意靈感。

Flutter 是目前開發者首選的跨平台開發框架。

近期的移動開發者調研結果凸顯了 Flutter 的迅猛發展。分析公司 SlashDataMobile Developer Population Forecast 2021 (2021 移動開發者人口預測) 報告顯示 Flutter 是如今最流行的跨平台開發框架,有 45% 的開發者選用,在 2020 年 1 季度至 2021 年 1 季度期間,使用人數增長了 47%。我們自己的數據也印證了這一增長,過去 30 天內,在 Play 商店新上架的應用中,有超過八分之一的應用是使用 Flutter 開發的。

在 I/O 大會上,我們介紹過,如今僅 Play 商店就有超過 20 萬款應用是使用 Flutter 開發的;開發這些應用的公司如騰訊,其即時通訊應用微信 (WeChat) 在 iOS 和 Android 平台的用戶數超過了 12 億;還有 TikTok 的開創者 位元組跳動,其目前已經使用 Flutter 開發了 70 款不同應用;以及 BMWSHEINGrab滴滴 等公司。當然,使用 Flutter 的並非只有大公司,部分創意十足的應用就出自一些您可能不曾聽過的公司,比如 Wombo (一款迅速走紅的唱歌自拍應用)、Fastly (一款飲食控制應用) 以及 Kite (一款精美的投資交易應用)。

介紹 Flutter 2.2

Flutter 2.2 側重於改進開發體驗,目的是讓您能夠向客戶提供更穩定、性能更好的應用。

現在,默認情況下,新項目會自動啟用健全的空安全。空安全可有效防範空引用異常,讓開發者能夠有一些方式來在自己的代碼中表示非可空類型。由於 Dart 的實現非常健全,編譯器能夠在運行時避免空檢查,從而提升應用的性能。生態系統也緊隨其後,目前已有大約 5,000 個 package 更新支持空安全。

在這一版本中還包含了許多性能改進: 對於 web 應用,我們使用 Service Worker 來提供後台緩存;對於 Android 應用,Flutter 支持延遲加載組件;至於 iOS 應用,我們已在開發工具來對着色器進行預編譯,以便消除或減少首次運行卡頓。我們還向 DevTools 套件中添加了許多新功能,藉此幫您了解應用中內存分配方式,以及支持第三方工具擴展程序。

此外,我們還在一些重要的領域進行了優化,例如提高網絡目標的可訪問性。

我們的工作已不再局限於 Flutter 的核心。我們還與 Google 其他團隊合作,將 Flutter 與更多技術棧的開發者進行聯動。特別指出的是,我們仍會繼續打造可信賴的服務來幫助開發者負責任地將其應用變現。在此版本中,我們 新的廣告 SDK 也已更新,現在具有空安全設置,並支持自適應橫幅廣告格式。我們還引入了一個新的支付插件,這款插件是我們與 Google Pay 團隊合力開發,可用於在 iOS 和 Android 平台處理實物商品的支付事宜。此外,我們也更新了我們的 應用內購買插件,以及配套的 codelab

在此版本中,作為成就 Flutter 的 “秘密武器”,Dart 也有了更新。Dart 2.13 擴展了對原生互操作性的支持,現在支持在 FFI 中使用數組和封裝結構體。新的 Dart 版本還支持類型別名,如此一來,不但能提高代碼可讀性,也讓部分重構工作更為輕鬆。我們將繼續為更廣泛的生態系統增加集成方案,包括 GitHub Actions 和針對基於雲的業務邏輯部署優化過的官方 Docker 映像

不止是 Google 項目

儘管 Google 仍是 Flutter 項目的主要貢獻者,但我們也欣喜地看到 Flutter 的生態系統在不斷發展壯大。

近幾個月來,一個特別的增長領域就是支持 Flutter 的平台和操作系統日益增多。在 Flutter Engage 活動中,我們曾宣布 Toyota 將把 Flutter 引入其下一代汽車信息娛樂系統。上個月,Canonical 推出了其首個 集成了 Flutter 支持的 Ubuntu 版本,其中集成了 Snap 並支持 Wayland。

兩家新合作夥伴的到來也說明這個生態系統正在不斷發展: 三星正在將 Flutter 移植到 Tizen (採用一個其他開發者也可貢獻內容的開源代碼庫),索尼正在主導為嵌入式 Linux 提供解決方案而努力

設計師們也因為這個項目的開源性質而獲益匪淺,Adobe 已宣布推出其 XD to Flutter 插件更新版。Adobe XD 為設計師提供了絕佳的試驗和迭代方式,現在,由於加強了對 Flutter 的支持,設計師和開發者可以通力協作,以前所未有的速度將自己的想法付諸實踐。

最後,微軟將繼續與我們合作;除了 Surface 團隊一直在使用 Flutter 開發可摺疊設備體驗項目外,本周又增加了 Flutter UWP (Windows 10) Alpha 應用。我們興奮地看到,越來越多的應用在利用 Flutter 內置的平台適應功能來打造可在移動設備、桌面和 web 等多個平台完美運行的體驗。

打造絕佳的體驗

我們推出 Flutter 的最主要目的是幫助開發者打造絕佳的體驗。我們認為應用開發工作可以更美好,希望可以為您消除在觸及受眾時遇到的傳統障礙,這些理念激勵着我們不斷向前。

我們期待看到您使用 Flutter 構建應用。美國退伍軍人事務部的項目就是一個不錯的應用示例,通過 視頻,您可以了解其 Flutter 應用是如何幫助他們為患有創傷後應激障礙 (PTSD) 的士兵提供康復治療的。

我們在 Flutter 方面所做的工作會在 Google I/O 大會以各種研討會、演示和視頻點播的形式 與大家分享。別忘記嘗試我們的 photo booth web 應用,這個有趣的應用就是用 Flutter 開發的,您可以在那裡與我們的吉祥物 Dash 及其夥伴們合影留念!

Tags: