Stories

Detail Return Return

Flutter開發者 3.29版本關注要點 - Stories Detail

哈嘍,我是老劉
Flutter 3.29已經發布有一段時間了,老劉寫Flutter代碼已經6年多,對這種例行的Flutter版本更新基本上已經是內心毫無波瀾。
不過最近有不少朋友問要不要更新到最新版,這裏羅列一下從開發者角度看比較重要的更新,大家自己判斷。

一、架構與性能優化

  1. Dart 代碼執行線程調整
    Dart 代碼現直接在 Android/iOS 的主線程運行,減少了線程切換開銷,但需注意可能加劇平台 UI 線程的負載,需通過性能分析工具監控卡頓問題。
  2. 渲染引擎變更
    • iOS 平台完全移除了 Skia 渲染引擎,可能影響依賴 Skia 特性的應用;
    • 無 Vulkan 驅動的 Android 設備改用 OpenGLES 的 Impeller 引擎,提升低端設備兼容性。

二、組件庫增強

組件庫的更新是例行的,基本每個發佈版本都會有。
但是通常老劉不建議使用最新的Flutter版本,所以這部分就略過了,感興趣的同學可以去看官方的發佈文檔。
不建議緊跟最新版主要有兩個原因:
1、依賴的三方庫可能還沒有支持。
2、穩定性還沒有經過大規模驗證,之前也出現過新的發佈版本引入一些很難規避的問題。

三、重大變更與棄用

  1. 構建工具鏈調整
    • 移除 Flutter Gradle 插件(3.19 後已棄用),舊項目需遷移至 Kotlin 實現的 AGP 公共 API;
    • Web 平台正式移除 HTML Renderer,強制使用 CanvasKit 或 WebAssembly。

    • 這一點要説一下,Flutter的web和標準的web開發已經完全不是一件事情了。考慮用Flutter做web端的同學要重點關注這一條。
  2. 官方 Package 停止維護
    包括 flutter_markdownpalette_generator 等 6 個包將於 2025 年 4 月 30 日後停止支持,需尋找社區分叉或替代方案。

四、開發工具與調試

調試工具增強也屬於是例行更新,大家可以每過幾個大版本後系統瞭解一下最新的調試工具。

五、其他重要更新

多窗口支持推進:PC 端多窗口功能進入 PR 審查階段,預計年內落地。開發者苦多窗口功能久已啊。
主題規範調整:棄用 ThemeData.dialogBackgroundColor,遷移至DialogThemeData.backgroundColor,可通過 dart fix 自動修復。

六、升級建議

該版本涉及較多底層變更(如線程模型、渲染引擎),可能對現有項目產生兼容性影響。建議:

  1. 優先測試 UI 線程性能及渲染表現;
    這一點可能比較重要,項目升級後一定要增加針對性的測試,特別是針對多種不同機型的覆蓋。
  2. 檢查 Gradle 插件和 Web 渲染器遷移需求;
  3. 使用 dart fix 處理棄用 API。
    dart fix 這個工具還是建議大家利用起來,能很好的提升升級的效率,IDE會有自動化提示,很方便。

如需完整更新日誌,可參考官方文檔或遷移指南。

總結

總的來説對開發者影響最大的可能是Dart 代碼現直接在 Android/iOS 的主線程運行。開發者如果升級一定要做好測試覆蓋。
其它的功能更多是例行的優化與升級。
從最近幾個版本的升級來看,Flutter這個項目已經進入相對穩定的階段。
比較少出現重量級功能的變化,更多的以bug修復和功能優化為主。
這對開發者來説是非常好的事情。
而對於觀望者來説,通過每個發佈版本的更新情況,大致能估算團隊的投入程度。
基於這些數據去判斷比可以減少很多不必要的擔心與憂慮。

如果看到這裏的同學對客户端開發或者Flutter開發感興趣,歡迎聯繫老劉,我們互相學習。
點擊免費領老劉整理的《Flutter開發手冊》,覆蓋90%應用開發場景。
可以作為Flutter學習的知識地圖。
覆蓋90%開發場景的《Flutter開發手冊》

user avatar beiyouzhiyu Avatar qngyun1029 Avatar
Favorites 2 users favorite the story!
Favorites

Add a new Comments

Some HTML is okay.