開源Flutter框架釋出了最新1.17版本,全面提升效能以及記憶體使用效率,終端使用者將明顯感受到使用者介面更加順暢,而且因為Flutter開始支援iOS平臺的繪圖API Metal,因此iOS應用程式執行效能將更好,另外,Flutter還更新了一些好用Material小工具,使開發者可在應用程式提供更好的視覺效果。

效能改進是這個版本的更新重點,只要開發者將應用程式中的Flutter升級到1.17版本,則使用者可以明顯看到介面動畫表現更加平滑快速,而且應用程式整體的容量也更小,記憶體使用率更低。

在這個版本,預設導覽案例執行速度提升20%到37%,對於簡單的iOS動畫,CPU和GPU使用率最多減少40%,不過,具體效果與實際的硬體規格有關。另外,這個版本還改進應用程式的大小,以Android的Flutter Gallery範例為例,2019年底的版本容量為9.6 MB,而現在則為8.1 MB,總共減少了18.5%。而在記憶體的使用上,這個版本在快速捲動畫面瀏覽大圖像時,可減少70%的記憶體使用,這將能提高應用程式效能,但是具體提升的程度,仍取決於本身裝置的記憶體容量。

這個版本最大的效能改進,便是開始支援Metal,Apple在iOS裝置上對Metal的支援,幾乎到了可直接存取底層GPU的程度,讓Flutter得以大幅提升渲染效率,現在於完全支援Metal的iOS裝置,Flutter會預設使用Metal,使得Flutter應用程式在大部分情況能夠執行得更快,平均可提高渲染速度50%(下圖)。而對於不支援Metal的裝置,也就是使用A7處理器以下的裝置,或是iOS 10以前的版本,將會跟過去一樣繼續使用OpenGL。

官方提到,他們根據用戶的回饋,改進Flutter中的Material設計系統實作,在Flutter 1.17中,新加入幾個Material小工具,包括由Google的Material Design團隊設計和實作的NavigationRail,這是個回應式應用程式導覽模型小工具,適用於需要在行動裝置和桌上電腦間切換的應用程式,可以隨著應用程式螢幕尺寸增加切換使用BottomNavigator。

Material DatePicker則有新版本,更新加入了新的視覺效果,以符合新的Material準則以及新的文字輸入模式,在Android和iOS,文字選擇選單的呈現更良好,選單過長的時候不會超出螢幕。另外,Flutter 1.17也加入了新的動畫套件(下圖),提供開發者許多預建置的動畫。

官方提到,發布Flutter 1.17版本比其他版本花費了更多的時間,他們花了許多時間在提升框架品質上,在今年,他們修復的問題(Issue)比建立的還要多,總數減少了約800個,從所有231位貢獻者那合併了3,164個拉取請求。


Advertisement

更多 iThome相關內容