【老孟Flutter】Flutter 2的新功能

老孟Flutter發表於2021-03-07

老孟導讀:昨天期待已久的 Flutter 2.0 終於釋出了, Flutter Web和Null安全性趨於穩定,Flutter桌面安全性逐漸轉向Beta版!

原文連結:https://medium.com/flutter/whats-new-in-flutter-2-0-fe8e95ecc65

今天,我們很高興地宣佈Flutter 2的釋出。距離Flutter 1.0的釋出已經兩年多了,但是在很短的時間內,我們已經關閉了24,541期,併合並了765個貢獻者的17,039個PR。自9月Flutter 1.22釋出以來,我們已經關閉了5807期併合並了298位貢獻者的4091個PR。特別感謝我們的志願者捐助者,他們慷慨地抽出時間來改進Flutter專案。Flutter 2 release 版本前幾名志願者貢獻者是xubaolin46個PR,a14n32個PR,專注於使Flutter達到零安全,hamdikahloun具有20個PR,改善了Flutter外掛的數量。但是,不僅僅是編碼員為Flutter專案做出了貢獻。一大批志願者PR評審人員還負責評審1525個PR,包括hamdikahloun(再次!),CareFYazeedAlKhalaf(16個!)。Flutter確實是社群的一項工作,如果沒有問題提出者,PR貢獻者和程式碼審查者,我們就不可能進入第2版。此版本適用於所有人。

Flutter 2發行版中發生了很多令人興奮的事情。有關Flutter 2和Dart 2.12的新功能以及我們的客戶和合作夥伴如何使用Flutter 2的概述,請參閱宣佈Flutter 2。有關Dart 2.12的詳細資訊,請參閱宣佈Dart 2.12。有關建議在生產中使用的Flutter網站的最佳利用方法,請參閱Flutter網站支援達到穩定的里程碑

而且,要了解Flutter 2本身的新功能,請繼續閱讀!

Web

截止到今天,Flutter的Web支援已經從Beta過渡到穩定渠道。在此初始穩定版本中,Flutter在Web平臺的支援下將程式碼的可重用性提高到另一個層次。因此,現在當您穩定地建立Flutter應用程式時,Web只是該應用程式的另一個裝置目標。

通過利用Web平臺的眾多優勢,Flutter為構建豐富的互動式Web應用程式奠定了基礎。我們主要專注於效能和渲染保真度的改進。除了我們的HTML渲染器之外,我們還新增了一個新的基於CanvasKit的渲染器。我們還新增了特定於Web的功能,例如Link小部件,以確保在瀏覽器中執行的應用感覺像Web應用。

Flutter的Web支援部落格文章中找到有關此穩定版本的更多詳細資訊。

Sound Null Safety

空安全性是Dart語言的重要補充,它通過區分可空型別和非可空型別進一步增強了型別系統。這使開發人員能夠防止null錯誤崩潰,這是應用程式崩潰的常見原因。通過將空檢查合併到型別系統中,可以在開發過程中捕獲這些錯誤,從而防止生產崩潰。從Flutter 2開始,包含Dart 2.12的穩定版完全支援Null Safety。有關更多詳細資訊,請參見Dart 2.12部落格文章

pub.dev軟體包儲存庫已經發布了1,000多個空安全軟體包,其中包括DartFlutterFirebaseMaterial團隊的數百個軟體包。如果您是軟體包作者,請檢視遷移指南並考慮立即進行遷移。

Desktop

在此版本中,我們很高興地宣佈,Flutter的桌面支援已在穩定頻道中以早期版本的標誌提供。這意味著我們已經準備好讓您嘗試一下它作為Flutter應用程式的部署目標:您可以將其視為“ beta快照”,以預覽將於今年晚些時候釋出的最終穩定版本。

為了使Flutter桌面達到這樣的質量,從大小上進行了改進,從確保文字編輯像在每個受支援的平臺上的本機體驗一樣開始,包括諸如文字選擇樞軸點的基本功能以及能夠進行文字編輯的能力。在處理完鍵盤事件後停止傳播。在滑鼠輸入端,現在可以立即開始使用高精度定點裝置進行拖動,而不必等待處理觸控輸入時所需的延遲。此外,內建的上下文選單已新增到MaterialCupertino設計語言的TextField和TextFormField小部件中。最後,新增了抓手 到ReorderableListView小部件。

作為開發人員,ReorderableListView總是很擅長移動專案,但是它要求使用者長按才能啟動拖動。這在移動裝置上很有意義,但是很少有桌上型電腦使用者會想到用滑鼠長按某個專案來移動它,因此此版本包括適用於滑鼠或觸控輸入的抓握手柄。平臺慣用功能的另一項改進是更新的滾動條該滾動條可以正確顯示桌面形狀因素。

此版本包括一個更新的Scrollbar小部件,該小部件在桌面環境中非常有效

滾動條小部件已更新,以提供桌面上預期的互動功能,包括拖動拇指,單擊軌道以上下滾動頁面以及在滑鼠懸停在滑鼠的任何部分上時顯示軌道的功能。滾動條。此外,由於Scrollbar是使用新ScrollbarTheme類的主題,因此您可以設定其樣式以使其與應用程式的外觀和風格相匹配。

對於其他特定於桌面的功能,此版本還啟用了Flutter應用程式的命令列引數處理功能,以便可以使用諸如Windows File Explorer中的資料檔案雙擊之類的簡單操作來開啟應用程式中的檔案。我們還努力使WindowsmacOS的調整大小更加流暢,併為國際使用者啟用IME(輸入法編輯器)。

圖片釋出

Flutter桌面現在支援直觀的IME輸入

此外,我們還提供了更新的文件,介紹了開始準備將桌面應用程式部署到特定於作業系統的商店時需要執行的操作。試試看,如果我們錯過了任何事情,請提供反饋。

在嘗試使用Flutter桌面Beta時,您可以通過按預期方式切換到Beta通道並根據flutter.dev的指導為目標平臺設定配置標誌來訪問它。此外,我們還製作了穩定通道上可用的beta位元的快照。如果您使用“ flutter config”啟用某個桌面配置設定(例如enable-macos-desktop),則可以嘗試桌面支援的beta功能,而不必經歷漫長的過程才能轉移到beta頻道,刪除Flutter SDK的所有最新Beta版,構建工具等。這非常適合嘗試一下或將桌面支援用作簡單的“ Flutter Emulator”。

但是,如果您選擇停留在穩定的頻道上以訪問桌面Beta,則不會像切換到Beta或dev頻道那樣快地獲得新功能或錯誤修復。因此,如果您正在積極地針對Windows,macOS或Linux,我們建議您切換到可更快提供更新的渠道。

當我們接近Flutter桌面的第一個完整的生產質量版本時,我們知道我們還有更多工作要做,包括對與本機頂級選單整合的支援,更像各個平臺的體驗的文字編輯以及可訪問性支援,以及常規的錯誤修復和效能增強。如果您認為在桌上型電腦達到生產質量之前還需要做其他事情,請確保提供您的反饋

平臺自適應應用程式:Flutter Folio示例

現在,Flutter 支援生產應用三個平臺(Android,iOS裝置和Web)和三個測試版(在Windows,MacOS和Linux)的,一個自然的問題是:如何編寫一個應用程式,適應本身以及多個不同尺寸(小,中和大螢幕),不同的輸入模式(觸控,鍵盤和滑鼠)和不同的習慣用法(移動,網路和桌上型電腦)?為了為我們自己以及世界各地的Flutter開發人員回答此問題,我們委託了Flutter Folio剪貼簿應用程式。

Folio只是一個簡單的示例,您希望它可以從一個程式碼庫在多個平臺上很好地執行。所謂“好”,是指它在小螢幕,中螢幕和大螢幕上看起來都不錯,它利用了觸控,鍵盤和滑鼠輸入的優勢,並且對於平臺的慣用語言也很好用(例如,通過使用網路上的連結和桌面上的選單)。我們將這種應用稱為“平臺自適應”,因為它可以很好地適應所執行的任何平臺。

如果您想了解如何使自己的應用程式平臺具有適應性,可以檢視Folio的原始碼。將來,期望找到能夠更深入地探討該主題的文件和程式碼實驗室。同時,請檢視AloïsDeniel關於該主題的出色部落格文章和視訊

Google Mobile Ads to Beta

除了Flutter桌面版移至測試版,今天我們很高興地宣佈Flutter的Google移動廣告SDK的公開測試版。這是一個全新的外掛,除了現有的重疊式廣告格式(重疊式橫幅廣告,非頁內廣告和獎勵視訊廣告)外,還提供內嵌橫幅廣告和原生廣告。該外掛統一了對Ad Manager和Admob的支援,因此,無論您是什麼規模的釋出商,都可以根據自己的情況量身定製該外掛。

我們一直在與一些早期客戶一起在私人Beta版程式中試用此外掛,其中許多人已成功使用這些新格式啟動了他們的應用程式。例如,Sua Musica(最大的拉丁美洲音樂平臺,面向擁有1.5萬名經過驗證的歌手和1000萬MAU的獨立歌手),使用適用於Flutter的Google移動廣告SDK推出了其新的Flutter應用。他們發現印象數增加了350%,點選率增加了43%,eCPM增加了13%。

外掛今天可供您使用。作為Flutter Engage的一部分,Andrew Brogdon和Zoey Fan做了一個關於“使用Flutter進行應用獲利”的會議(可在Flutter Engage網站上找到),他們在其中討論了使用Flutter構建的應用的獲利策略,以及如何在自己的廣告中載入廣告Flutter應用。此外,我們在flutter.dev上建立了一個新的Ads頁面,您可以在其中找到所有有用的資源,例如外掛實施指南內嵌橫幅和原生廣告程式碼實驗室,以及重疊橫幅,非頁內廣告和獎勵視訊廣告程式碼實驗室。請確保將其簽出!

新的iOS功能

僅僅因為我們正在繼續提高對其他平臺的支援質量,所以不要以為我們忘記了iOS。實際上,此版本帶來了與iOS相關的178個PR合併,包括23495(將狀態恢復帶到iOS),67781(它滿足了長期存在的直接從命令列構建IPA而無需開啟Xcode的要求)的要求,以及69809,更新了CocoaPods版本以匹配最新工具。此外,Cupertino設計語言實現中還新增了一些iOS小部件。

新的CupertinoSearchTextField提供了iOS搜尋欄UI。

圖片釋出

CupertinoFormSectionCupertinoFormRowCupertinoTextFormFieldRow部件更容易產生與iOS的分段式視覺美學驗證表單欄位。

圖片釋出

除了適用於iOS的功能外,在著色器和動畫方面,我們還將繼續總體上研究iOS和Flutter的效能改進。iOS仍然是Flutter的主要平臺,我們將繼續努力帶來重要的新功能和效能改進。

新的小部件:自動完成和ScaffoldMessenger

此版本的Flutter附帶了兩個附加的新小部件,即AutocompleteCore和ScaffoldMessenger。AutocompleteCore表示將自動完成功能納入Flutter應用程式所需的最小功能。

圖片釋出

自動完成是Flutter經常需要的功能,因此此版本開始提供此功能。您今天就可以使用它,但是如果您對完整功能的設計感到好奇,請檢視自動完成設計文件

同樣,建立ScaffoldMessenger來處理許多與SnackBar相關的問題,包括能夠輕鬆建立SnackBar以響應AppBar動作,建立SnackBars以在Scaffold過渡之間持久存在的功能,以及能夠在SnackBars完成時顯示SnackBars的能力。即使使用者已導航到具有其他Scaffold的頁面,也將執行非同步操作。

圖片釋出

所有這些優點可以從現在開始使用幾行程式碼來顯示SnackBars:

final messenger = ScaffoldMessenger.of(context);
messenger.showSnackBar(SnackBar(content: Text(‘I can fly.’)));
複製程式碼

正如您可能想象的那樣,還有更多的東西。有關詳細資訊,請在ScaffoldMessenger上觀看Kate Lovett的精彩視訊

具有Add-to-App的多個Flutter例項

從與許多Flutter開發人員的交談中我們瞭解到,您中的許多人沒有啟動全新應用程式的奢侈心意,但您可以通過將Flutter新增到現有的iOS和Android應用程式中來利用Flutter。此功能稱為Add-to-App,是在兩個移動平臺上重用Flutter程式碼同時仍保留現有本機程式碼庫的絕佳方法。但是,對於您中的那些人,我們有時會聽到,不清楚如何將第一個螢幕整合到Flutter中。將Flutter和本機螢幕交織在一起使導航狀態難以維護,並且在檢視級別整合多個Flutter會佔用大量記憶體。

過去,其他Flutter例項的儲存成本與第一個例項相同。在Flutter 2中,我們將建立額外的Flutter引擎的靜態記憶體成本降低了約99%,每個例項約為180kB。

圖片釋出

支援此功能的新API可以在beta通道上預覽,並在flutter.dev上進行記錄,以及一系列演示此新模式的示例專案。通過此更改,我們不再猶豫建議在本機應用程式中建立Flutter引擎的多個例項。

Flutter修復

每當任何框架成熟並使用越來越多的程式碼庫聚集使用者時,隨著時間的推移,趨勢就是避免對框架API進行任何更改,以避免破壞越來越多的程式碼行。Flutter 2擁有超過500,000個Flutter開發人員,涉及的平臺數量越來越多,因此它很快就屬於這一類。但是,為了使我們能夠隨著時間的推移不斷改進Flutter,我們希望能夠對API進行重大更改。問題是,如何在不中斷開發人員的情況下繼續改進Flutter API?

我們的答案是Flutter Fix

Flutter Fix是事物的組合。首先,dartCLI工具有一個新的命令列選項,名為dart fix,它知道在哪裡可以查詢已棄用的API列表以及如何使用這些API更新程式碼。其次,它是可用修補程式本身的列表,與版本2捆綁在一起。最後,它是針對VS Code,IntelliJ和Android Studio IDE的更新的Flutter擴充套件集,它們知道如何公開相同的內容。可用的修復程式列表,如帶小燈泡的快速修復程式,可幫助您單擊滑鼠來更改程式碼。

舉例來說,假設您的應用中包含以下程式碼行:

使用不推薦使用的引數建立Flutter小部件

由於不贊成使用此建構函式的引數,因此應將其替換為以下內容:

圖片釋出

圖片釋出

建立一個Flutter小部件,其中不推薦使用的引數已替換

即使您熟悉所有Flutter的棄用,您在程式碼中必須進行的更改數量也就越大,應用所有修補程式的難度就越大,並且更容易出錯。人類在這類重複性任務上並不擅長。但是計算機是;通過執行以下命令,您可以看到我們知道如何在整個專案中進行的所有修復:

$ dart fix --dry-run
複製程式碼

如果您想批量應用它們,可以輕鬆地這樣做:

$ dart fix --apply
複製程式碼

或者,如果您想在自己喜歡的IDE中以互動方式應用這些修補程式,也可以這樣做。

圖片釋出

多年來,我們一直在將舊的API標記為已棄用,但是現在有了關於何時刪除實際已棄用的API的政策,Flutter 2是我們第一次這樣做。即使我們尚未捕獲所有已棄用的API作為資料來提供Flutter Fix,我們仍將繼續從先前已棄用的API中新增更多資訊,並將在未來的重大更改中繼續這樣做。我們的目標是盡最大努力使Flutter的API達到最佳狀態,同時還要使您的程式碼保持最新。

Flutter DevTools

為了清楚說明DevTools是用於除錯Flutter應用程式的工具,我們在除錯Flutter應用程式時將其重新命名為Flutter DevTools。此外,我們還做了很多工作,以使其達到Flutter 2的生產質量。

一項即使在您啟動DevTools之前也可以幫助您解決問題的新功能是,Android Studio,IntelliJ或Visual Studio Code能夠在出現常見異常時發出通知,並提供將其引入DevTools中以幫助您除錯的功能它。例如,以下內容顯示您的應用程式中已引發溢位異常,該異常會在Visual Studio Code中彈出一個選項,用於除錯DevTools中的問題。

圖片釋出

Flutter IDE擴充套件會在您的應用引釋出局溢位異常時發出通知

按下該按鈕可將您帶到出現問題的小部件上的DevTools中的Flutter Inspector,因此您可以對其進行修復。今天,我們僅針對佈局溢位異常執行此操作,但我們的計劃是針對所有常見異常提供這種處理,DevTools可以解決這些異常。

一旦執行了DevTools,選項卡上的新錯誤標記將幫助您跟蹤應用程式中的特定問題。

圖片釋出

DevTools中的紅點可幫助您專注於出現錯誤的應用程式部分

DevTools的另一個新功能是能夠輕鬆檢視解析度比顯示的影像高的影像,這有助於跟蹤過多的應用程式大小和記憶體使用情況。要啟用此功能,請在Flutter Inspector中啟用“反轉超大影像”。

圖片釋出

啟用“反轉超大影像”選項,以突出顯示比需要放大的影像大的影像。

現在,當您顯示解析度明顯大於其顯示尺寸的影像時,該影像將上下顛倒顯示,以便在您的應用中輕鬆查詢。

圖片釋出

實際應用中的“反轉超大影像”選項

此外,根據大眾的需求,除了在Flutter Inspector的“佈局資源管理器”中顯示有關靈活佈局的詳細資訊外,我們還新增了顯示固定佈局的功能,使您能夠除錯各種佈局。

圖片釋出

新的版式資源管理器顯示了固定版式和彈性版式的版式詳細資訊

這還不是全部。這只是Flutter DevTools 2中更多新功能的摘要:

  • 在Flutter框架圖中新增了平均FPS資訊並提高了可用性
  • 用紅色錯誤標籤在網路事件探查器中調出失敗的網路請求
  • 新的記憶體檢視圖表更快,更小且更易於使用,其中包括用於描述特定時間活動的新懸浮卡。
  • 將搜尋和過濾新增到“日誌記錄”選項卡
  • 在啟動DevTools之前跟蹤日誌,因此啟動時可以檢視完整的日誌歷史記錄
  • 將“效能”檢視重新命名為“ CPU Profiler”,以使其更清楚地提供什麼功能
  • 向CPU Profiler火焰圖新增了時序網格
  • 將“時間軸”檢視重新命名為“效能”,以便更清楚地瞭解其提供的功能

而這並非全部。對於全套更改,我建議以下公告:

Android Studio / IntelliJ擴充套件

用於IntelliJ系列IDE的Flutter外掛也為Flutter 2獲得了許多新功能。首先,有一個新的專案嚮導,它與IntelliJ中的新嚮導樣式匹配。

圖片釋出

圖片釋出

另外,如果您正在Linux上使用IntelliJ或Android Studio對從Snap Store安裝Flutter SDK進行程式設計,則Flutter快照路徑已新增到已知SDK路徑列表中。這使Flutter快照的使用者可以更輕鬆地在“設定”中配置Flutter SDK。感謝MarcusTomlinson @的貢獻!

圖片釋出

通過Snap安裝的Flutter SDK,可以更輕鬆地使用Linux上的Android Studio。

您可以在公告中閱讀更多有關最新更新的內容:

  • IntelliJ外掛M51
  • IntelliJ外掛M52
  • IntelliJ外掛M53
  • IntelliJ外掛M54

Visual Studio程式碼擴充套件

Visual Studio Code的Flutter擴充套件也對Flutter 2進行了改進,從許多測試增強功能開始,包括重新執行僅失敗的測試的功能。

圖片釋出

經過兩年的開發,對Dart的LSP(語言伺服器協議)支援現已作為預設方式提供給Dart分析器,以將其整合到Flutter擴充套件的Visual Studio Code中。LSP支援對Flutter開發進行了許多改進,包括能夠在當前Dart檔案中應用某種型別的所有修復程式,並使程式碼完成生成完整的函式呼叫(包括括號和必需的引數)的功能。

圖片釋出

圖片釋出

LSP的支援不僅限於Dart。它還支援pubspec.yamlanalysis_options.yaml檔案中的程式碼完成。

圖片釋出

這些只是Flutter的Visual Studio Code擴充套件最近獲得的一些更新。您可以在以下公告中閱讀完整列表:

  • Visual Studio程式碼外掛v3.16
  • Visual Studio程式碼外掛v3.17
  • Visual Studio程式碼外掛v3.18
  • Visual Studio程式碼外掛v3.19
  • Visual Studio程式碼外掛v3.20

DartPad已更新為支援Flutter 2

如果不提及DartPad,則該工具更新列表將不完整,而DartPad已更新為支援Flutter 2。

圖片釋出

DartPad已針對Flutter 2更新

現在,您可以嘗試使用Flutter的新的空安全版本,而無需離開自己喜歡的瀏覽器。

生態系統更新

Flutter的開發經驗不僅包含框架和工具,還包括其他內容。它還包括適用於Flutter應用程式的各種軟體包和外掛。自上一次Flutter穩定版本釋出以來,該領域也發生了很多事情。例如,在攝像機和video_player外掛之間,已合併了將近30個PR,以大大提高兩者的質量。如果您以前在使用這兩種方法時遇到麻煩,則應該再看一遍;我們認為您會發現它們更加強大。

另外,如果你是一個火力地堡的使用者,我們很高興地宣佈,最流行的外掛已被帶到生產質量,包括空安全的支援,以及全套的參考文件和常見的使用教程使用Android,iOS,網頁,和macOS。這些外掛包括:

  • 驗證
  • 雲消防站
  • 雲功能
  • 雲訊息傳遞
  • 雲儲存
  • 速溶藥

另外,如果您正在尋找應用程式的崩潰報告,則可能需要考慮Sentry,該公司已經釋出了適用於Flutter應用程式的新SDK

圖片釋出

Sentry崩潰報告工具現在支援Flutter

藉助Sentry的Flutter SDK,您可以實時收到在Android,iOS或本機平臺上發生的錯誤的通知。您可以在Sentry文件中檢視詳細資訊。

此外,如果您還沒有看到Flutter Community的“ plus”外掛,則需要將其簽出。他們分叉了Flutter團隊最初開發的許多受歡迎的外掛,並新增了null安全支援,對其他平臺的支援和一整套全新的文件,以及開始修復flutter / plugins儲存庫中的適當問題。該外掛包括以下內容:

  • Android鬧鐘+
  • Android Intent +
  • 電池+
  • 連通性+
  • 裝置資訊+
  • 網路資訊+
  • 套餐資訊+
  • 感測器+
  • 分享+

此時,與Flutter相容的軟體包和外掛集的數量超過15,000,這使得很難找到您應該首先考慮的軟體包和外掛。因此,我們會發布釋出點數(靜態分析得分),受歡迎程度,喜歡度,並且,對於特別高的質量,會發布那些特別標記為Flutter Favorite的包裝。為了及時應對Flutter 2,我們在收藏夾列表中新增了幾個新軟體包:

  • animation_text_kit
  • bottom_navy_bar
  • 斬波器
  • font_awesome_flutter
  • flutter_local_notifications
  • just_audio

恭喜這些軟體包的作者!如果您尚未簽出它們,或者尚未列出列表中的其餘軟體包,則應該這樣做。

最後但並非最不重要的一點是,對於對軟體包的最新版本是否適用於Flutter的最新版本感興趣的軟體包作者或軟體包使用者,您將需要訪問Codemagic的新pub.green網站。

圖片釋出

Codemagic的新pub.green網站顯示了最新Flutter版本與頂級軟體包的相容性

pub.green網站測試了pub.dev上可用的Flutter和Dart軟體包與不同Flutter版本的相容性。將其視為Flutter的“我可以使用”。有關更多詳細資訊,我建議CodeMagic團隊釋出公告部落格

重大變化

我們對Flutter 2進行了以下重大更改,其中許多可以使用dart fix命令或所選IDE中的快速修復程式自動緩解:

  • 61366繼續剪輯行為更改
  • 66700預設FittedBox的clipBehavior為無
  • 68905從Cupertino顏色解析度API刪除nullOk引數
  • 69808從Scaffold.of和ScaffoldMessenger.of刪除nullOk,為兩者建立
  • 68910從Router.of中刪除nullOk引數,並使其返回不可為空的值
  • 68911新增maybeLocaleOf到本地化
  • 68736在Media.queryOf刪除nullOK
  • 68917從Focus.of,FocusTraversalOrder.of和FocusTraversalGroup.of中刪除nullOk引數
  • 68921從Shortcuts.of,Actions.find和Actions.handler中刪除nullOk引數
  • 68925從AnimatedList.of和SliverAnimatedList.of中刪除nullOk引數
  • 69620從BuildContex中刪除不贊成使用的方法
  • 70726從Navigator.of中刪除nullOk引數,並新增Navigator.maybeOft
  • 72017刪除不推薦使用的CupertinoTextThemeData.brightness
  • 72395.HoverEvent中刪除不建議使用的[PointerEnterEvent,PointerExitEvent]。
  • 72532刪除不建議使用的showDialog.child
  • 72890刪除不推薦使用的Scaffold.resizeToAvoidBottomPadding
  • 72893刪除不贊成使用的WidgetsBinding。[deferFirstFrameReport,allowFirstFrameReport]
  • 72901刪除不推薦使用的StatefulElement.inheritFromElement
  • 72903刪除不推薦使用的Element方法
  • 73604刪除不建議使用的CupertinoDialog
  • 73745從庫比蒂諾[Sliver] NavigationBar刪除不贊成使用的actionForegroundColor
  • 73746刪除不贊成使用的ButtonTheme.bar
  • 73747刪除跨度棄用
  • 73748刪除棄用的RenderView.scheduleInitialFrame
  • 73749刪除不贊成使用的Layer.findAll
  • 75657從Localizations.localeOf刪除殘留的nullOk引數
  • 74680Actions.invoke刪除nullOk,新增Actions.maybeInvoke

概括

最後,我們在Google Flutter團隊的所有成員中,我們要說-謝謝。感謝×150,000,在過去兩年中,社群中推出了超過150,000個Flutter應用程式。萬一您錯過了它,我們會在Flutter Engage主題演講的開幕式中播放針對社群的Mashup Video,其中彙集了一些我們最喜歡的Flutter應用程式。

沒有您對我們所有人正在創造的東西的持續支援和激動,就不可能成為世界上最具活力的全球開發者社群之一。我們迫不及待想看看您接下來將要做什麼。

交流

部落格中領取 《330個控制元件大全》和 《Flutter 實戰》PDF。地址:laomengit.com

相關文章