Google Flutter 一統移動、Web、桌面、嵌入式

儘管大洋彼岸正如火如荼的 Google I/O 向全世界宣告 Google All in 了 AI,但在國內開發者群體中最引爆的卻是這樣兩點:

Kotlin First!Google 宣佈 Kotlin 成為 Android 開發首選語言,兩年前,Kotlin 成為與 Java 並存的 Android 開發一級語言,兩年後的今天,Kotlin 已然越過 Java。

Flutter 迎來 1.5 版本,已實現支持移動(iOS、Android)、Web、桌面及嵌入式設備,Flutter 已然成為跨平臺開發最強利器。

接下來,我們一起來看,Flutter 是如何實現一統江湖的。

Google Flutter 一統移動、Web、桌面、嵌入式

在近日舉行的 2019 Google I/O 開發者大會上,Google 推出了 Flutter 1.5。這是一個開源移動 UI 框架,可以幫助開發人員構建 Android 和 iOS 的原生界面。

不僅如此,如今這個框架還成為了一個多平臺 UI 框架,能夠支持 Web、桌面、移動甚至嵌入式設備。Flutter 所肩負的使命已經擴展到了“為所有設備開發出美好體驗的首選框架”。

2017 年 5 月,Flutter 首次在 Google 的 I / O 開發者大會上與我們見面,最早的版本為 Alpha 版,而 1.0 版本最後於 2018 年 12 月問世。

為了與 Facebook 的 React Native 等框架競爭,Flutter 的設計目標是在獲得原生移動應用的性能和平臺集成度的同時,兼顧小型 UI 工具包帶來的快速開發和跨平臺能力。Flutter 的應用使用 Google 的 Dart 語言編寫。

在過去的一年中,Flutter 團隊一直在嘗試將 Flutter 擴展到其他平臺。其開發團隊表示:“Google 內部的團隊越來越依賴 Flutter,而且 Dart 平臺提供輕便體驗的潛力,所以我們才想做這樣的嘗試。”

其中一個 Flutter 團隊全力以赴將 Flutter 引擎移植到標準的 Web(代號為 Hummingbird,蜂鳥)而一個團隊則致力於支持桌面級應用程序,包括鍵盤和鼠標等輸入,窗口大小調整,以及 Chrome OS 應用開發工具。

Flutter Web 版

Google 發佈了 Flutter Web 版的第一個技術預覽版,其設計目的是為了構建“高度互動,富含圖形的網頁”。

該團隊會盡快改善代碼,“尤其是會在改善性能上投入精力,並與其他 Flutter 項目協調代碼庫。”Google 希望開發人員率先嚐試該框架,並提供反饋。

為了展示 Flutter Web 版,Google 與紐約時報合作,製作了一個益智遊戲的演示。上圖所示的數獨遊戲可以利用相同的代碼,在 Android、iOS、Web 和 Chrome 操作系統上運行。

Flutter 桌面版:

Flutter 桌面版不再是一個實驗項目,它已經演變成了 Flutter 引擎。雖然還不能用於生產環境,但是 Google 已經發布了一些指南,幫助在 Windows、Mac 和 Linux 上開發 Flutter 應用。

Flutter Web 版還處於技術預覽階段,同時,Flutter 集團產品經理 Tim Sneath 表示,Flutter 桌面版的開發很快就會完成。雖然兩者都還沒有正式支持生產部署,但是預計未來幾個月裡,該團隊將加速這兩方面的開發。

與此同時,Flutter Chrome OS 版的使用率一直在增長,無論是運行 Flutter 應用還是作為開發人員平臺,因為它支持 Android 和 Linux 應用的執行。

你可以使用 Visual Studio Code 或 Android Studio 開發一個 Flutter 應用,然後就可以在 Chromebook 上測試和運行,而無需模擬器。你還可以將 Chrome OS 的 Flutter 應用發佈到 Google Play 商店。

Flutter 嵌入式設備版:

最後,Google 還提供了面向其他設備的 Flutter 嵌入式功能。其團隊已經發布了示例,演示了直接在 Raspberry Pi 等小型設備上運行 Flutter。Flutter 還有一個嵌入式 API,適用於汽車、家用電器以及其他設備的開發。

在 2019 Google I/O 大會上,Google 宣佈了 Nest Hub Max。證明 Flutter 已經可以在智能顯示器操作系統上運行。

該平臺的一些 Google 特色的功能是由 Flutter 開發的,Google 智能助手團隊計劃“在未來幾個月內”還要做進一步的擴展。目標是在今年內利用 Flutter 推動整體的系統 UI。

Flutter 移動設備版:

最後,Flutter 1.5 還包括“數百個響應開發人員反饋的更改”。有一些面向應用商店 iOS SDK 要求的更新,還有一些面向 iOS 和 Material 小部件的更新,新設備類型的引擎支持,以及 Dart 2.3 特色的 UI-as-code 新語言功能。

如果你已經安裝了 Flutter,那麼只需鍵入命令 flutter upgrade,就可以升級到最新版本。如果你還沒有安裝 Flutter,那麼請分別按照 Windows、MacOS 或 Linux 的入門指南進行操作。

除了改進框架本身外,Google 還投資支持該框架的生態系統和軟件包社區。在過去幾個月中,Google 為 Web 視圖、Google 地圖和 Firebase ML Vision 提供了高質量的產品包。近日,Google 還添加了在應用內付款的初步支持。

在 2019 I/O 大會上,Google 重點展示了使用 Flutter 和 Firebase 構建的 ML Kit 自定義圖像分類器。

這個工具包提供了一個非常易於使用的工作流程應用,可用於創建自定義圖像分類模型。你可以通過手機的相機收集訓練數據,並邀請其他人向你的數據集貢獻素材,然後觸發模型訓練和使用經過訓練的模型,所有這些功能都來自同一個應用。

在相關新聞中,Google 宣佈將 The App Brewery 上 Flutter 的培訓課程從 199 美元降至 10 美元(https://www.appbrewery.co/p/flutter-development-bootcamp-with-dart)。該課程包含 30 多個小時的 Flutter 開發講解,包括視頻、演示和實驗。

2 月份,在發佈 Flutter 1.2 的同時,Google 還推出了 Flutter Create,這項競賽要求開發人員“使用 5K 以內的 Dart 代碼,通過 Flutter 構建一些有趣、啟發靈感和美麗的東西。”

Google 共計收到了 750 多個參賽作品,並於 2019 I/O 大會上宣佈了獲獎者——Zebiao Hu 贏得了 iMac Pro 的所有獎金。


分享到:


相關文章: