1. 程式人生 > 其它 >01、Android--Flutter入門

01、Android--Flutter入門

Flutter入門

Flutter是谷歌移動UI框架,可以快速在iOS和Android上構建高質量的原生使用者介面。

它包含如下特點和核心概念

跨平臺:現在Flutter至少可以跨5種平臺包括:MacOS、Windows、Linux、Android、iOS以及谷歌最新的作業系統:Fuchsia。
絲滑般的體驗:使用Flutter內建Material Design和Cupertino風格元件。
響應式框架:使用Flutter的響應式框架和一系列基礎元件,可以輕鬆構建使用者介面。
支援外掛:通過Flutter外掛可以訪問平臺本地API,如相機、藍芽、WIFI等。
高效能:Flutter採用GPU渲染技術,所以效能極高,理論上可以達到60FPS。

元件是Fluttert應用程式使用者介面的基本構建塊,在Flutter種一切皆為元件,可以將佈局方式、動畫處理都視為Widget。(其中StatelessWidget和StatefulWidget都繼承於Widget)

Flutter介紹

生命週期

Flutter中狀態和React中的狀態概念一致。React的核心思想是元件化的思想,應用由元件搭建而成,而元件中最重要的概念是State,是一個UI資料模型,是元件渲染時的資料依據。

Flutter程式的執行可以認為是一個巨大的狀態機,使用者的操作、請求API和系統事件的觸發都是推動狀態機執行的觸發點,通過呼叫setState方法推動狀態機進行響應。

State初始化時會依次執行 : 建構函式 > initState > didChangeDependencies > Widget build , 此時頁面載入完成。

分層框架

Flutter框架是一個分層的結構,每一層都建立在前一層之上。上層比下層的使用頻率更高。

分層設計的目標是幫助開發者用更少的程式碼做更多的事情 例如, Material 層通常組合來自 Widget 基本 Widget ,而 Widget 層通過較低階物件渲染層來構建。

環境配置

要安裝並允許Flutter,開發環境必須滿足以下要求:

作業系統:Windows 7或更高版本(64)
磁碟空間:400MB(不包括Android Studio磁碟空間)
工具:Git for Windows,需要手動新增D:\Program Files\Git\bin至Path系統環境變數中

Flutter SDK下載地址:https://flutter.dev/docs/development/tools/sdk/archive#windows

然後在Flutter安裝目錄flutter資料夾下的flutter_console.bat,雙擊執行啟動flutter命令列。

注意:需要在環境變數path中新增flutter的路徑資訊:D:\Program Files\flutter\bin,然後在使用者變數中新增如下變數:

PUB_HOSTED_URL=https://pub.flutter-io.cn
FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

然後開啟命令視窗執行flutter doctor命令,如果出現如下提示:

則需要在環境變數中新增ANDROID_HOME = Android SDK路徑

如果提示Flutter plugin not installed,則需要在Android Studio中安裝Flutter外掛和Dart外掛

提示未安裝licenses則執行flutter doctor --android-licenses,然後全部Y即可。

其中關於adb修改埠的方式如下所示:配置如下環境變數並指定埠即可。

ANDROID_ADB_SERVER_PORT=8826

如果gradle下載慢則配置如下映象:

maven { url 'https://maven.aliyun.com/repository/google'}
maven { url 'https://maven.aliyun.com/repository/jcenter'}
maven { url 'http://maven.aliyun.com/nexus/content/groups/public'}

如果出現錯誤:Failed to install the following Android SDK packages as some licences have則在Android SDK目錄下的SDK/tools/bin目錄下輸入:

sdkmanager --licenses

如果出現no devices則在flutter的控制檯設定Android SDK的目錄即可:

flutter config --android-sdk C:\SDK