在去年 MWC 大展上釋出首個 Beta 版後,Flutter 1.0 正式版於 2018 年 12 月召開的 Flutter Live 2018 上正式釋出。今天在巴塞羅那召開的 MWC 釋出會上,Google 正式釋出了 Flutter 跨平臺 UI 框架的 1.2 版本。新版本最大的改變就是引入了對 Android App Bundles 的支援,可有效打包 Android APP 並建立即時應用的最新技術。此外該框架還幫助開發者接受應用內購買奠定了基礎,並新增了很多基於 Web 的工具。
以下是Flutter 1.2的一些更新,包括:
改進的Material和Cupertino小部件集
該團隊一直致力於改進Material和Cupertino小部件集。現在,開發人員在使用Material小部件時會有更大的靈活性。對於Cupertino小部件,他們增加了對iOS上浮動游標文字新增的支援。這可以通過用力按鍵盤或長按空格鍵來觸發。
支援Android App Bundles
Flutter 1.2支援Android App Bundles,這是一種新的上傳格式,包含應用程式的所有編譯程式碼和資源。這種格式有助於縮小應用程式的大小,並支援Android應用程式的動態交付等新功能。
支援Dart 2.2 SDK
此版本包括Dart 2.2 SDK,該SDK也於昨天釋出。 Dart 2.2具有顯著的效能改進,可以更快地進行提前編譯,並且可以用於初始化集合的文字語言。它還引入了Dart Common Front End(CFE),它解析Dart程式碼,執行型別推斷,並將Dart轉換為較低階別的中間語言。
Flutter 1.2 更新包括了大量常規穩定性和效能更新,包括最新的 Dart 2.2 SDK(預設情況下,Flutter 應用程式是用 Google 的 Dart 語言編寫的),此外團隊還表示正積極改善對 iOS 的支援,支援浮動游標文字編輯等等。
雖然 Flutter 一直專注於移動,但該團隊最近也開始討論使用該框架構建桌面應用程式。為此,在 1.2 版本中引入了全新的鍵盤事件和滑鼠懸停支援。Project Hummingbird(將 Flutter 推廣網頁版)的技術預覽版也將會未來幾個月上線。
對於新的工具,值得注意的是,Google 已經在 Android Studio 中構建了 Flutter 支援,併為微軟日益流行的 Visual Studio Code 新增了工具。現在,它還在構建新的基於 Web 的程式設計工具 Dart DevTools。它們在本地執行,包括小部件檢查器,時間軸檢視,源級偵錯程式和日誌記錄檢視。
其他的更新
Flutter 1.2還支援更廣泛的動畫緩動功能,這些功能的靈感受到Robert Penner工作的啟發。該團隊已經通過新增新的鍵盤事件和滑鼠懸停支援為桌面級作業系統做好準備。
Flutter的外掛團隊為Flutter 1.2新增了一些更改,可以很好地支援In App Purchases外掛。除了這些更新,他們還為視訊播放器,webview和地圖修復了一些錯誤。
除了Flutter 1.2,團隊還發布了Dart DevTools的預覽版,這是一套用於Dart和Flutter的效能工具。這個套件中的一些工具,包括web inspector、timeline檢視和其他工具,現在可以安裝了。
現在開始玩Flutter的好處呢, 我認為有如下幾點:
-
如果我們以後想在Google的新系統上跑程式的話, 用Flutter來編寫是一定沒錯的. 當然最近的報導顯示, Fuschia原生支援ART, 因此Android程式應該也可以. 不過直接上Flutter我認為更好.
-
Flutter用Dart, 學習Flutter的同時會使我們掌握一門新的語言. 買一送一.
-
Flutter天生支援iOS風格的控制元件, 稱為Cupertino, 這樣我們可以一套設計, 一套code跑在兩個系統上.
-
學習Flutter的過程會改變手機端app開發的思維. 畢竟這個親只有一個activity. 全程跟個遊戲引擎一樣. 60幀每秒繪圖.
-
Hot reload. 極大地加速了我們的開發效率. 試過了, 絕對會愛上它.
-
Flutter提供method channel給Android和iOS. 其實我們可以只用Flutter來開發UI. 其他底層邏輯可以封裝Android和iOS分別的lib package. 然後直接Rx封裝寫回method channel. 也是一種新的開發模式.
-
效能更好, 相容性更好, 開發起來更有樂趣, 這才是程式設計師的人生. 而Flutter都能滿足.
閱讀更多
一份完整的Android Studio搭建Flutter教程
相信自己,沒有做不到的,只有想不到的
在這裡獲得的不僅僅是技術!