版權聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉載磨取。http://www.reibang.com/p/399c01657920
本文同步發(fā)布在公眾號Flutter那些事
人柿,歡迎大家關注。
轉載請標明出處:
http://www.reibang.com/p/399c01657920
本文出自 AWeiLoveAndroid的博客
Flutter系列博文鏈接 ↓:
工具安裝:
Flutter基礎篇:
- 谷歌Flutter1.0正式版發(fā)布
- Flutter基礎篇(1)-- 跨平臺開發(fā)框架和工具集錦
- Flutter基礎篇(2)-- 老司機用一篇博客帶你快速熟悉Dart語法
- Flutter基礎篇(3)-- Flutter基礎全面詳解
- Flutter基礎篇(4)-- Flutter填坑全面總結
- Flutter基礎篇(5)-- Flutter代碼模板寝衫,解放雙手顷扩,提高開發(fā)效率必備
- Flutter基礎篇(6)-- 水平和垂直布局詳解
- Flutter基礎篇(7)-- Flutter更新錯誤全面解決方案(圖文+視頻講解)
- Flutter基礎篇(8)-- Flutter for Web詳細介紹
- Flutter基礎篇(9)-- 手把手教你用Flutter實現(xiàn)Web頁面編寫
- Flutter1.9升級體驗總結(Flutter Web 1.9最新版本填坑指南)
Flutter進階篇:
- Flutter進階篇(1)-- 手把手帶你快速上手調(diào)試Flutter項目
- Flutter進階篇(2)-- Flutter路由詳解
- Flutter進階篇(3)-- Flutter 的手勢(GestureDetector)分析詳解
- Flutter進階篇(4)-- Flutter的Future異步詳解
- Flutter進階篇(5)-- 使用Flutter創(chuàng)建插件詳解并發(fā)布到Pub庫
- Flutter進階篇(6)-- PageStorageKey拐邪、PageStorageBucket和PageStorage使用詳解
- Flutter進階篇(7)-- Flutter路由輕量級框架FRouter
Dart語法系列博文鏈接 ↓:
Dart語法基礎篇:
Dart語法進階篇:
在 Google I/O ’17 上汹胃,Google 向我們介紹了 Flutter —— 一款新的用于創(chuàng)建移動應用的開源庫。
Flutter是什么呢?它是Google使用Dart語言開發(fā)的移動應用開發(fā)框架东臀,用來幫助開發(fā)者在iOS和Android平臺上開發(fā)高性能着饥、高質量的原生應用。Flutter是跨平臺的免費開源UI框架惰赋,iOS和Android可以共用一套代碼宰掉。
2018年2月呵哨,F(xiàn)lutter推出了第一個Beta版本。這真是個好事轨奄。期待正式版早日發(fā)布孟害。最近研究了一下Flutter,這個工具從安裝到運行經(jīng)歷了九九八十一難挪拟,好在終于成功運行起來了挨务。下面看一下官方的Demo在Android模擬器的運行效果圖:
本文同步發(fā)布在github,更多關于Flutter的信息請點擊
https://github.com/AweiLoveAndroid/Flutter-learning
更多干貨,請關注我的公眾號Flutter那些事
下面就 詳細的 講一下我的安裝之路和遇到的一些問題:
社會我韋哥玉组,人好干貨多谎柄。開始擼碼!
一惯雳、Flutter安裝:
要安裝并運行Flutter朝巫,你的開發(fā)環(huán)境必須滿足這些最低要求:
這里以windows系統(tǒng)為例(https://flutter.io/setup-windows/),
macos安裝文檔請查看:https://flutter.io/setup-macos/
linux安裝文檔請查看:https://flutter.io/setup-linux/
(一) 系統(tǒng)要求:Windows 7 SP1或更高版本(64位)吨凑,磁盤空間:400 MB(不包括IDE /工具的磁盤空間)捍歪。CPU請用intel的,CMD的不能開發(fā)安卓(卡到爆M叶邸糙臼!)!內(nèi)存條8G以上就行恩商,其他硬件不做要求变逃。
具體描述:略
(二) 下載JDK 1.8(必須是1.8版本)
1.首先打開java官網(wǎng)
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html,找到對應版本下載怠堪,如圖所示揽乱,我的電腦是Win7 64位,我就選擇最后一個下載粟矿。
2.下好之后凰棉,雙擊安裝,一直點擊下一步陌粹,選擇安裝路徑撒犀,安裝完畢之后,配置環(huán)境變量掏秩。
打開環(huán)境變量的步驟:桌面“我的電腦
”(或“計算機
”)--> 右鍵“屬性
”--> 選擇“高級系統(tǒng)設置
”-->選擇下方的“環(huán)境變量
”或舞。
- a.在彈出的“
環(huán)境變量
”窗口中,點擊下方的“新建
”按鈕蒙幻,在彈出的“新建系統(tǒng)變量
”窗口中映凳,新建一個名為JAVA_HOME
的環(huán)境變量,變量值為Java的安裝路徑邮破,我的為:D:\develop\my_java\
诈豌。 - b.編輯Path環(huán)境變量仆救,在原變量值的最后面加上
;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
,注意前面的分號別忘了矫渔。 - c.新建一個名為“
CLASSPATH
”的環(huán)境變量派桩,變量值為:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
,注意:一定不要忘了前面的點蚌斩。
如圖所示:
- d.然后打開命令行铆惑,輸入
java -version
,如果有版本號輸出送膳,說明環(huán)境配置好了员魏,否則請按上述步驟重新操作一次。具體輸出如圖所示:
(三) Android Studio叠聋、SDK撕阎、JDK以及模擬器配置(如果是真機運行不需要安裝模擬器)
Tips: | |
---|---|
工具 | 工具對應的版本要求 |
Android Studio | 3.0 或者更高的版本 |
SDK | Android 4.1(API 16)或者更高版本 |
Android模擬器鏡像 | 推薦使用x86或者x86_64鏡像 |
-
(1)Android Studio下載
Android Studio的下載地址請看:https://developer.android.google.cn/studio/#downloads
安裝方式:指定安裝路徑,一直點擊下一步就可以了碌补。然后解壓到一個英文目錄即可虏束。我這里選擇的是免安裝版。后面的介紹都是根據(jù)免安裝版進行講解的厦章。安裝版的步驟其實也是差不多的镇匀。 (2)Android Studio安裝
1.雙擊桌面的Android Studio圖標(或者進入解壓之后的路徑/bin目錄,雙擊studio.exe)袜啃,會出現(xiàn)一個導入配置的窗口汗侵,如圖所示。
2.因為是初次打開Android Studio群发,我們一般不需要導入配置晰韵,直接點擊Do not import settings
雪猪,點擊OK
進入下一步起愈,這時候會顯示logo加載頁面告材。如圖所示坤次。
3.然后是彈窗,提示 讓你發(fā)送反饋給谷歌疤剑,我們點擊“Don't send”,不發(fā)送隘膘。
4.然后會有一個彈窗如圖所示纵势。因為首次允許Android Studio它找不到SDK,會提示你設置代理,我這里選擇取消。
然后我們打開android studio安裝路徑/bin目錄黎比,找到idea.properties
,打開這個文件,在末尾加上一行
disable.android.first.run=true
,那么以后再打開android studio就不會再出現(xiàn)這個提示阅虫。如圖所示:
5.接下來我點擊next進入下一步躬拢,如圖所示聊闯。
6.然后會提示我安裝版本篷帅,第一個是標準安裝,第二個是自定義安裝箭昵,我們這里選擇默認的第二個Custom
自定義安裝正林,直接點擊next進入下一步既可。如圖所示:
7.然后就是設置風格,這里有白色和黑色可選蝇棉,我選擇的右邊的黑色,如圖所示板辽。
8.接下來是設置安裝選項醇坝,如圖所示画畅。默認會安裝Android SDK
以及Android SDK Platform
轴踱,由于我電腦用的Intel的CPU,所以我這里勾選了第三個選項Intel HAXM
,這個主要是啟動模擬器時加速用的悯辙,順便我把第四個模擬器選項也勾選上钓觉,后續(xù)如有需要可以在模擬器安裝App進行操作瓤狐。最下面是sdk的安裝路徑础锐。默認是在C盤,一般我們要選定一個非C盤的安裝目錄,比如我這里選擇的是D:\develop\sdk
路徑意推。選好之后點next進入下一步。
9.這里是設置Intel HAXM默認的大小,我這里就選擇默認的2G,如圖所示典徊。點擊next進入下一步蜂桶。
10.現(xiàn)在就開始安裝sdk了腰湾,稍作等待既可安裝完成了倒槐,如圖所示。
11.安裝完成之后,點擊Finish表示安裝完成着逐。如圖所示。
- (4)SDK和安卓模擬器:
1.我們雙擊打開Android Studio,進入歡迎頁,如圖所示:
2.然后打開右下角的Configure
右邊的倒三角按鈕,選擇Settings搏予,如圖所示:
3.然后一次選擇Appearance and Behavior --> System Settings --> Android SDK
当娱,進入Android SDK頁面,我們可以看到SDK Platforms,這個就是前面安裝的時候默認安裝的那個文件,是sdk的核心文件。我們看看Android API 28下面有一個Google APIs Intel x86 Atom System Image模擬器吭历,這個是帶有包含Google Play service 等 Google 的應用和服務的模擬器,一般情況我們使用Intel x86 Atom System Image模擬器(32位)仿吞,或者Intel x86 Atom_64 System Image模擬器(64位)就可以了峡迷。在實際開發(fā)中,為了兼容不同版本,你可以根據(jù)需要下載不同API對應的模擬器蒿褂。如圖所示也祠。
【注意】關于Build Tools 版本的一些建議堪旧,建議下載Android SDK Platform 不同版本 以及對應的SDK Tools 版本。每一個文件的詳細信息說明截圖如下:
4.需要在Path環(huán)境變量
中添加兩個值。分別是 Android SDK中tools目錄的路徑和platform-tools的路徑蛮瞄。(如果已經(jīng)配置,就不用再去配置了。)
D:\develop\sdk\tools;
D:\develop\sdk\platform-tools;
(四) 工具:Flutter需要用到以下2個工具:
(1) PowerShell 5.0或更新版本
PowerShell是微軟推出的代替cmd的更方便的命令行工具,不管是win7 win8 還是win10windows系統(tǒng)都自帶有這個命令行工具训桶。
查看PowerShell有沒有安裝躁锡,可以點擊電腦左下角
--> 控制面板
--> 程序
--> 程序和功能
拦焚,找一下PowerShell,有時候安裝了也可能找不到(我電腦就找不到),那就win + R
,輸入powershell
回車,輸入$PSVersionTable
寞宫,查看powershell版本。下圖就是我的powershell版本號信息。
如果報錯說明沒有安裝PowerShell,請按以下要求進行安裝:
1.確保你已經(jīng)安裝了.net 4.5以上智润。如果沒裝鼎姐,直接裝.net 4.6即可:
Microsoft .NET Framework 4.61
https://www.microsoft.com/zh-cn/download/details.aspx?id=499822.Microsoft .NET Framework 4.61 簡體中文語言包
https://www.microsoft.com/zh-cn/download/details.aspx?id=499773.裝ps5.0安裝包下載地址:
https://www.microsoft.com/en-us/download/confirmation.aspx?id=50395&6B49FDFB-8E5B-4B07-BC31-15695C5A2143=14.安裝好之后,記得將
powershell
假如環(huán)境變量献宫。如果環(huán)境變量有的話知态,就不用管它贡茅。(打開powershell,驹沿,輸入$PSVersionTable
,如果有版本信息顯示,就是OK富玷,如果報錯請設置環(huán)境變量幻工。 )
如果或者你的版本號低于5.0,請點擊電腦左下角
--> 控制面板
--> 程序
--> 程序和功能
盲憎,找一下PowerShell慕爬,卸載。然后再按上述安裝步驟去安裝PowerShell。
【注意:】關于命令行無法顯示某些字符或者中文亂碼問題的解決:
1、無法顯示√或者×字符
原因是點陣字體搞的鬼彪标。設置一下控制臺字體就可以了。
在控制臺標題右鍵,選擇字體,把點陣字體改為其他字體就可以了表谊。2课梳、cmd中文亂碼的解決:
1. win+R 輸入regedit 進入注冊表
2. 找到 `HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe`
如果該項下已存在CodePage項距辆,則把值改為十進制”65001”;
如果不存在暮刃,在該項下新建一個 DWORD(32位值)跨算,命名為“CodePage”沾歪,值設為“65001”
3. 重啟cmd后生效
- 3漂彤、PowerShell中文亂碼的解決:
1. win+R 輸入regedit 進入注冊表
2. 找到 `HKEY_CURRENT_USER\Console\%SystemRoot%_system32_WindowsPowerShell_v1.0_powershell.exe` 下的項雾消。
如果該項下已存在CodePage項灾搏,則把值改為十進制”65001”;
如果不存在立润,在該項下新建一個 DWORD(32位值)狂窑,命名為“CodePage”,值設為“65001”
3. 重啟PowerShell后生效
安裝好之后桑腮,運行一下看看版本號泉哈,我這邊的powershell版本號相關信息如下:
PSVersion 5.1.15063.1029
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.15063.1029
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
(2) Git for Windows
使用git命令行(關于如何使用git,請查看我的博文 Git及GitHub快速入門圖文全面詳解):
git clone -b beta https://github.com/flutter/flutter.git
運行過程截圖(這里下載的是beta版的破讨,你也可以下載其他分支的丛晦,比如master分支):
二、配置環(huán)境變量
(一)配置 flutter
環(huán)境變量
如果想在命令行中使用 flutter 命令提陶,你需要添加flutter的路徑到path中去烫沙。這個和配置java環(huán)境變量是同樣的做法,找到flutter安裝路徑隙笆,比如我的是E:\develop\flutter\bin
锌蓄,我復制這個路徑升筏,右鍵我的電腦
-->屬性
-->高級系統(tǒng)屬性
-->環(huán)境變量
-->找到PATH
,點擊編輯-->在最后把剛復制的路徑粘貼進來瘸爽,-->一直保存
確定就可以了您访。
接下來,使用flutter --version
查看一下版本號剪决,看看環(huán)境變量配置好了沒有灵汪。。如果如下圖所示表示OK柑潦。
【大坑】注意:如果只輸入flutter
或者輸入flutter -version
识虚, 那么flutter以為是下達了自動更新命令,會自動更新最新版本妒茬,這個一定要注意了担锤。
(二)配置國內(nèi)鏡像(為了以后的穩(wěn)定性,這一步一定要做乍钻,免得老是翻墻)
如果你在國內(nèi)使用 Flutter肛循,那么你可能需要找一個與官方同步的可信的鏡像站點,幫助你的 Flutter 命令行工具到該鏡像站點下載其所需的資源银择。你需要為此設置兩個環(huán)境變量:
PUB_HOSTED_URL
和FLUTTER_STORAGE_BASE_URL
多糠,然后再運行 Flutter 命令行工具。
上海交通大學 Linux 用戶組
FLUTTER_STORAGE_BASE_URL: https://mirrors.sjtug.sjtu.edu.cn
PUB_HOSTED_URL: https://dart-pub.mirrors.sjtug.sjtu.edu.cn
Flutter 社區(qū)
FLUTTER_STORAGE_BASE_URL: https://storage.flutter-io.cn
PUB_HOSTED_URL: https://pub.flutter-io.cn
建議使用Flutter 社區(qū)這個鏡像浩考,這個比較快
三夹孔、打開flutter命令行
win + R 快捷鍵,輸入cmd析孽,回車搭伤,輸入flutter doctor
,回車袜瞬。
這個命令初次運行可能會很慢怜俐,F(xiàn)lutter會自動安裝所需依賴,并進行編譯邓尤。建議科學上網(wǎng)
拍鲤。
使用flutter doctor
命令下載的dart sdk會放到flutter安裝路徑/bin/cache/dart-sdk
目錄(例如:我的路徑是:E:\develop\flutter
)。
【注意】直接下載dart sdk
是無法再flutter中使用的汞扎,使用flutter doctor
命令下載的dart sdk是閹割版的dart季稳,很多api都有變更,并且flutter和dart版本號是一一對應的澈魄,直接下載dart sdk是最新的景鼠,不適用于flutter。切記R怀馈莲蜘!別為了圖一時方便直接下載dart sdk谭确,放到flutter安裝路徑/bin/cache/dart-sdk
目錄而導致flutter無法使用!F鼻逐哈!
安裝過程截圖:
注意:
[√]這個是安裝OK的昂秃,[X]是需要安裝的,或者是已安裝但是沒有運行起來的杜窄。(具體這里面有標記[X]
的那些項如何安裝后文有詳細講解肠骆,這里簡單提一下。)
這里面有四項內(nèi)容:
- (1)Flutter 這是Flutter工具塞耕,就是剛才git下載的那個蚀腿。
- (2)Android工具鏈,這里指的是SDK扫外,會標注出SDK的最大版本號莉钙。
- (3)IDE工具的對應版本,比如我的是Android Studio 2.2版本(這個是下載安裝的版本)筛谚,Android Studio 3.2版本(這個是免安裝的版本磁玉,所以也會顯示出來),還有Intellij IDEA
- (4)已連接的設備驾讲,可以是模擬器蚊伞,也可以是真機,如果已連接會顯示出來吮铭。
四时迫、幾個flutter常用命令
查看版本號的命令使用截圖如下:
以下是常用命令:
常用命令 | 含義 |
---|---|
--version | 查看Flutter版本 |
-h或者--help | 打印所有命令行用法信息 |
analyze | 分析項目的Dart代碼。 |
build | Flutter構建命令沐兵。 |
channel | 列表或開關Flutter通道别垮。 |
clean | 刪除構建/目錄。 |
config | 配置Flutter設置扎谎。 |
create | 創(chuàng)建一個新的Flutter項目。 |
devices | 列出所有連接的設備烧董。 |
doctor | 展示了有關安裝工具的信息毁靶。 |
drive | 為當前項目運行Flutter驅動程序測試。 |
format | 格式一個或多個Dart文件逊移。 |
fuchsia_reload | 在Fuchsia上進行熱重載预吆。 |
help | 顯示幫助信息的Flutter。 |
install | 在附加設備上安裝Flutter應用程序胳泉。 |
logs | 顯示用于運行Flutter應用程序的日志輸出拐叉。 |
packages | 命令用于管理Flutter包岩遗。 |
precache | 填充了Flutter工具的二進制工件緩存。 |
run | 在附加設備上運行你的Flutter應用程序凤瘦。 |
screenshot | 從一個連接的設備截圖宿礁。 |
stop | 停止在附加設備上的Flutter應用。 |
test | 對當前項目的Flutter單元測試蔬芥。 |
trace | 開始并停止跟蹤運行的Flutter應用程序梆靖。 |
upgrade | 升級你的Flutter副本。 |
五笔诵、開發(fā)工具的安裝
(一)AS
Flutter對Android Studio的要求:需要安裝3.0
或者更高的版本
返吻。
關于AS安裝,這個就不用說了乎婿,大家都安裝了吧测僵,jdk,sdk這些都配置好了吧.直接看下文好了。
(二) Flutter和Dart插件安裝
Flutter需要Flutter
和Dart
插件才可以使用:
File --> settings --> Plugins --> Browse repositories谢翎,然后輸入Flutter就可以下載了恨课,Drat也是一樣的道理。
-
Flutter
插件安裝:
-
Dart
插件安裝:
安裝好之后重啟一下AS就可以使用插件了岳服。
六剂公、需要更新Flutter請看以下操作(不更新Flutter的就跳過此步):
要同時更新Flutter SDK和包,請使用以下命令:
flutter upgrade
七吊宋、如果已經(jīng)安裝Fluttter纲辽,需要切換Flutter分支,比如我要下載PreView版本 如何操作:
前面我們下載的beta分支下面的包璃搜,最近Flutter推出了PreView版本拖吼,那么我們應該如何更新呢?
先看幾個命令:
查看遠程分支:
git branch -a
查看本地分支:
git branch -v
切換分支:
git checkout -b 分支名稱
> 例如 切換到master分支:
git checkout -b master
git如何clone遠程github中的分支这吻?
git clone -b 分支名稱 github上的url
例如:下載flutter的master分支(PreView版本就是這個分支)吊档,命令如下所示:
git clone -b master https://github.com/flutter/flutter.git
八、運行一個demo app
Flutter支持的sdk環(huán)境:Android 4.1(API 16)或者更高版本唾糯。
Android模擬器:推薦使用x86或者x86_64鏡像怠硼。
創(chuàng)建project過程和普通安卓項目是很類似的。
(一)打開AS移怯,點擊 File --> New Flutter Project香璃,選擇Flutter application
然后點擊next,輸入一個工程名字舟误。
注意:項目名稱必須是小寫葡秒,單詞之間用下劃線隔開,你看我這樣創(chuàng)建就給我提示錯誤了,報錯的如圖所示眯牧。
(二)輸入包名蹋岩,點擊next,點擊finish学少,等待編譯就可以了剪个。如果沒配置好,這個時候往往會報錯旱易。
注意:這里可以支持ios和kotlin禁偎,如果需要的話可以勾上。
(三)首先模擬器阀坏,然后選擇要運行的項目如暖,注意了,這里有一個
MainActivity
和main.dart
忌堂,選擇main.dart
盒至,然后點擊綠色的三角號
圖標運行(或者點擊菜單欄Run
)就可以了。
我用的AS3.2士修,我截個圖枷遂,菜單欄跟以前版本有點不同,之前的AS版本可以在Build菜單找到編譯選項的棋嘲。
如果代碼有更改酒唉,可以點擊 黃色的閃電圖標
或者編輯完代碼之后按 Ctrl + S
鍵也可以 啟動熱重載
功能。
點擊它之后就可以進行熱加載沸移。
運行之后的截圖:
工程目錄結構:
九痪伦、隱藏句尾注釋:
我們看到代碼會發(fā)現(xiàn)每個句尾都有一個注釋,提示你當前是屬于哪個組件的范圍雹锣,如果你不喜歡可以設置不顯示:點擊菜單欄File
-> Settings
网沾,點擊Editor
,選擇Appearance
蕊爵,把最后一個 √
去掉即可隱藏句尾注釋辉哥。如下圖所示:
十、遇到的一些問題:
【注意:】更多詳細的坑請看博客 Flutter填坑全面總結攒射,這是最全面的總結醋旦。
(一)卸載flutter相關環(huán)境
- Dart的插件安裝包在 C盤路徑:
\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org文件夾里面
所以只需要找到Pub文件夾,刪掉Pub文件夾匆篓。
- Dart的插件安裝包在 C盤路徑:
- flutter源代碼文件浑度,就是你在github下載下來的那個項目源代碼,
比如我放在了E:\develop\flutter鸦概,我只需要把flutter這個文件夾刪除就可以了。
- flutter源代碼文件浑度,就是你在github下載下來的那個項目源代碼,
- C盤用戶名下面有個.AndroidStudioXXX的文件夾,這個是AS的緩存目錄窗市,
比如我的是 C:\Users\luzhaowei.AndroidStudio2.2
打開先慷,找到插件目錄 C:\Users\luzhaowei.AndroidStudio2.2\config\plugins
把里面的Dart 和 flutter-intelliJ兩個文件夾刪掉
- C盤用戶名下面有個.AndroidStudioXXX的文件夾,這個是AS的緩存目錄窗市,
- 把環(huán)境變量里面的flutter和dart有關的設置刪掉。
(二) 卸載flutter之后咨察,重新git命令安裝flutter之后论熙,然后命令行運行
flutter doctor
時,會有以下錯誤(以下是我的填坑指路全過程):
注意:由于下載的國外的網(wǎng)站上的資料摄狱,需要科學上網(wǎng)EЧ睢!媒役!
我退出命令行再運行祝谚,還是照樣出錯。
后來我想是不是BITS傳輸服務
未開啟酣衷,于是我一頓操作猛如虎交惯,操作如下,打開BITS:
計算機 --> 右鍵 “管理” --> 服務和應用程序里面穿仪,點擊“服務”席爽,然后如下圖所示:
然后選中圖中標記的這個,右鍵點擊“屬性”啊片,然后改成自動只锻,確定。如下圖所示:
然后我把剛下載的flutter文件夾刪掉紫谷,重新執(zhí)行git命令齐饮,下載flutter。(下好了之后記得配置環(huán)境變量)然后執(zhí)行flutter doctor
命令碴里,這次好一些了沈矿,但是命令行更新的很慢,一直停留在命令行咬腋,如圖所示:
等了好久羹膳,終于出來了。
然后又是漫長的等待根竿,在下載Material fonts這里出錯了,于是我關掉了命令行陵像,重新打開命令行,執(zhí)行flutter doctor
命令寇壳。
然后又是失敗醒颖。。不等了壳炎,關閉命令行吧泞歉。
然后重新打開命令行,執(zhí)行flutter doctor
命令。經(jīng)歷了幾個小時的折騰腰耙,終于環(huán)境安裝好了榛丢!
看到下面那個對勾,表示flutter已經(jīng)更新完成了挺庞。
然后重新打開命令行晰赞,執(zhí)行flutter doctor -v
命令,选侨∫从悖看看還有什么需要安裝的?(目前我安裝的flutter最新版是0.4.4),如下圖所示:
新版的跟舊版的有區(qū)別援制,這里的每一項里面的小項都很詳細的列舉了類目戏挡,只要是正確安裝了IDE,以及配置了jdk,sdk環(huán)境的隘谣,都會詳細列出來增拥。
Flutter支持Android Studio、VSCode以及 控制臺+文本編輯器 的方式寻歧。如果你還安裝了VSCode掌栅,命令行里面也會列舉出來的。
【重點提示】按照提示來操作即可码泛,哪個缺少(前面是 X
符號的)就配置哪一個猾封。。一般來說噪珊,命令行會給你一些提示晌缘,比如需要使用什么命令操作,需要在哪個路徑下面操作等痢站。磷箕。
有3點需要特別注意的:
- Flutter,這里面有4個工具阵难,缺一不可:Flutter本身的安裝包岳枷,F(xiàn)ramework(這是flutter的核心代碼部分),Engine(flutter的引擎)呜叫,Dart sdk空繁。
- Android toolchain(開發(fā)Android設備的一些工具),這里是完整版的安裝朱庆,有7個工具:sdk(sdk路徑)盛泡,ndk(ndk路徑),Platform(android-27)以及build-tools(27.0.3)娱颊,給sdk路徑配置
ANDROID_HOME
環(huán)境變量傲诵,jdk配置路徑凯砍,jdk運行環(huán)境版本,android licenses(協(xié)議)掰吕。
- Android toolchain(開發(fā)Android設備的一些工具),這里是完整版的安裝朱庆,有7個工具:sdk(sdk路徑)盛泡,ndk(ndk路徑),Platform(android-27)以及build-tools(27.0.3)娱颊,給sdk路徑配置
- Android Studio環(huán)境果覆,包括安裝包路徑颅痊,F(xiàn)lutter插件殖熟,Dart插件,AS自帶jdk版本號斑响。
我這里還安裝了IDEA菱属, 所以也會把它的環(huán)境列舉出來。
- Android Studio環(huán)境果覆,包括安裝包路徑颅痊,F(xiàn)lutter插件殖熟,Dart插件,AS自帶jdk版本號斑响。
下面是安裝過程中出現(xiàn)的一些安裝包缺少的問題:
↓下面這個 問題的原因:是sdk環(huán)境變量沒配置舰罚,找到sdk路徑纽门,比如我的是E:\debelop\sdk,我復制這個路徑营罢,打開環(huán)境變量赏陵,新建一個變量,取名為ANDROID_HOME
饲漾,然后在path變量里面最后加入;%ANDROID_HOME\%
↓下面這個 問題的原因:一些android licenses沒有同意蝙搔,按上面的要求在命令行輸入flutter doctor --android-licenses
,回車考传,然后會出現(xiàn)要你輸入y/n 你只要輸入 y
回車就好了吃型。
↓其他問題:基本都是開發(fā)工具的配置了括细,這個就不多說了酗钞,大家應該很熟悉了。
(三) 使用cmd執(zhí)行
flutter doctor
報錯:無法與服務器建立連接
啸臀。
報錯如下所示:
問題排查:
首先:我在電腦屬性服務里面開啟了BITS泉褐,這個問題已排除赐写。
其次:我的環(huán)境配置都是沒問題的。
最后我看flutter官方安裝文檔推薦使用PowerShell膜赃,于是我打開PowerShell命令行(必須安裝5.0+版本)挺邀,輸入flutter doctor
,終于好了财剖。所以為了不出奇怪的錯誤悠夯,請下載使用 PowerShell 5.0版本
(四) Flutter插件不支持當前AS版本。當前的AS是3.2躺坟,我的gradle編譯的api是27的沦补,可能Flutter目前最高只能支持26,果然我在build.gradle里面的編譯版本改成了26咪橙,重新編譯一下夕膀,OK了虚倒。
(五)系統(tǒng)重裝了,flutter工具也是重新安裝的产舞,由于沒有備份C盤的之前下載的三方庫魂奥,導致項目加載的時候重新加載一大堆三方庫,很卡易猫,下載用了很長時間(需要科學上網(wǎng))耻煤。
【順便說明一下三方庫使用方式】:
Flutter使用外部開源包,打開pubspec.yaml文件准颓,在如下加了中文注釋之處添加依賴庫:
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^0.1.2
# 在這里添加依賴庫哈蝇,比這個是英文單詞的庫
english_words:^3.1.0
# 這個是圖片選擇的庫
image_picker: ^0.4.1
格式:庫名稱: ^庫版本號
注意:冒號是中文標點,有一些庫需要^
攘已,不要忘記^
可以在 pub.dartlang.org 上找到開源軟件包炮赦。(需要翻墻)直接添加依賴,可能會很慢样勃,
也可以直接去https://pub.dartlang.org/packages/ 查找想要的依賴庫吠勘,直接下載壓縮包,然后復制到以下路徑:
C:\Users\XXX\AppData\Roaming\Pub\Cache\hosted\pub.dartlang.org\
(使用依賴庫安裝完成后的本地路徑也是這個)峡眶,建議把這個文件夾備份剧防,以便系統(tǒng)出故障之后或者重裝系統(tǒng)之后好還原。
(六)明明開啟了模擬器幌陕,可是AS就是不顯示模擬器诵姜,如下圖所示:
然后新建了一個API 26的模擬器,然后命令行窗口提示以下錯誤:
(七) 編譯一個demo居然安裝包是30多M搏熄,這個也太坑了吧棚唆。。安卓原生的apk包最多就幾M心例。但是這是debug模式下的apk包宵凌,簽名打包后的release版本的包很小,大概幾兆的樣子止后。
(八)Flutter有一個Flutter Inspector的工具瞎惫,主要是檢查Widget的,可以用于診斷布局渲染問題译株,查看app當前的視圖樹結構瓜喇。但是:這個視圖樹層次太深了,看起來很費勁有木有歉糜。乘寒。 詳細使用描述可以參考官網(wǎng)文檔:http://doc.flutter-dev.cn/inspector/
【備注:】不同電腦視圖樹工具顯示不一樣,可能跟cpu是x86或者x64有關匪补,另外一臺電腦就沒有這么多層次了伞辛,用到了哪些控件就顯示哪些烂翰,很明確清晰。如下圖所示:
(九)Flutter初次創(chuàng)建項目一直進不去蚤氏,錯誤如圖所示:
【解決方式】打開Android Studio安裝目錄下的 bin 目錄,找到 idea.properties
文件,在文件最后追加以下這行代碼甘耿,然后保存,以后打開Android Studio創(chuàng)建項目就不會卡住了:
disable.android.first.run=true
(十)Flutter編譯之后工程目錄沒有build目錄怎么解決竿滨?
【解決方式】點擊project(如果不是project,請點擊右邊的倒三角按鈕切換到project視圖)旁邊的齒輪圖標佳恬,勾選Show Excluded Files
就OK了。
十一姐呐、幾個相關學習網(wǎng)站
Flutter有關網(wǎng)站
Flutter官方文檔 https://flutter.io/docs/
官方主頁殿怜,英文版。Flutter中文官網(wǎng) https://flutter-io.cn/
官方的中文網(wǎng)曙砂,最新出來的,資料齊全骏掀,視頻鸠澈、博客、文檔截驮、最新咨詢都有笑陈。Flutter中文版網(wǎng)站 https://www.flutter123.com/ (不想翻墻的,推薦看這個網(wǎng)站)
自制的中文網(wǎng)葵袭,翻譯更新的比較快涵妥,基本跟官網(wǎng)同步。Flutter中文版網(wǎng)站 https://www.flutter123.cn/ (不想翻墻的坡锡,推薦看這個網(wǎng)站)
自制的中文網(wǎng)蓬网,翻譯更新的比較快,基本跟官網(wǎng)同步鹉勒。Flutter Github地址 https://github.com/flutter/flutter
Dart有關網(wǎng)站
開源代碼下載庫 https://pub.dartlang.org/
三方庫都可以在這里下載帆锋。Dart語言官方主頁 https://www.dartlang.org/
官方主頁,英文版禽额。DartPad在線編輯器 https://dartpad.dartlang.org/
Dart語言的在線編輯器-
DartPad的Github地址 https://github.com/dart-lang/dart-pad
DartPad的源碼锯厢。
![公眾號二維碼 (帶名字).png](https://upload-images.jianshu.io/upload_images/6098829-f3f291af806eee77.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)