前言
寫在前邊,本人是Android開發(fā)者,寫這篇文章時(shí)如你所見,正準(zhǔn)備入坑Flutter。入坑跨平臺(tái)的開發(fā)不得不考慮蘋果大佬對待Flutter的態(tài)度,因?yàn)橐坏┨O果大佬封殺Flutter的風(fēng)險(xiǎn)變大,入坑Flutter的風(fēng)險(xiǎn)就會(huì)很大,到頭來可能只是學(xué)會(huì)這么一門曾經(jīng)的技術(shù)而已。
直到看到知乎上的一篇文章Apple 為什么不封殺 Flutter 呢?(作者:mingyu ye))從某種程度上堅(jiān)定我的入坑心。
摘要一下知乎的回答:
Flutter:
Flutter 與前面說的 RN、Weex、小程序最大的不同就是 Flutter 是一個(gè)跨平臺(tái)解決方案,而非一個(gè)動(dòng)態(tài)化解決方案,Google 的野心很大,想把 Flutter 打造成為新一代的移動(dòng)端開發(fā)標(biāo)準(zhǔn),在做任何事情時(shí)都會(huì)考慮合規(guī)問題,所以才會(huì)在考慮了 iOS 上動(dòng)態(tài)化能力時(shí),依然不考慮支持這個(gè)特性,因?yàn)橐坏?Flutter 在 iOS 上具備了這個(gè)能力,也就存在了審核風(fēng)險(xiǎn),這個(gè)審核風(fēng)險(xiǎn)是系統(tǒng)性的;
這點(diǎn)要說到國內(nèi)外開發(fā)模式的不同,國外主張加強(qiáng) CodeReview,國內(nèi)主張小步快跑,快速迭代,有問題動(dòng)態(tài)更新和熱修復(fù)頂上,而蘋果的審核速度即便一再加快,也難滿足國內(nèi)各大 App 的快速發(fā)版需求,正因?yàn)槿绱艘辉僭囂教O果的審核邊界,最終在審核方面造成的問題和風(fēng)險(xiǎn)會(huì)逐步抵消掉動(dòng)態(tài)更新和熱修復(fù)帶來的好處,當(dāng)然不同 App 有不同的大環(huán)境,未來 App 也一定是朝著更合規(guī)的方向去發(fā)展;
Flutter 目前沒有合規(guī)上的風(fēng)險(xiǎn),因?yàn)楸旧砭筒皇且粋€(gè)動(dòng)態(tài)化解決方案,但一樣秉持不提倡、不承諾不封殺,因?yàn)?Flutter 的崛起會(huì)吃掉蘋果 App 原生開發(fā)人員的份額,蘋果不建議使用官方以外提供的 Native 開發(fā)方案,蘋果是絕不能容忍開發(fā)人員的大面積消失,一旦這種情況發(fā)生,蘋果的生態(tài)就會(huì)遭人掣肘,這是蘋果爸爸就會(huì)出來保護(hù)蘋果 App 原生開發(fā)人員,這個(gè)時(shí)候也就是 Flutter 份額降低影響力降低的時(shí)刻,蘋果也在不斷推行 Swift 和 SwiftUI 等對原生開發(fā)人員更友好的解決方案,力圖抵擋住各跨平臺(tái)解決方案對蘋果 App 原生開發(fā)人員的蠶食。
言歸正傳
Windows下Flutter環(huán)境部署
- 本文僅適合有編程基礎(chǔ)的同學(xué)學(xué)習(xí)查看,新手僅做參考,不懂就問
1. 鏡像使用
你懂的,國內(nèi)大環(huán)境下要下個(gè)下載這些軟件直接訪問是不現(xiàn)實(shí)的,好在國內(nèi)提供了鏡像,如果有梯子的也可自行處理
電腦用戶環(huán)境變量配置鏡像路徑。具體步驟
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
手動(dòng)操作步驟
(1)右鍵打開我的電腦
(2)點(diǎn)擊屬性
(3)打開高級(jí)屬性
(4)用戶屬性分別增加以上兩個(gè)環(huán)境變量
操作步驟過于簡單,直接上圖

配置環(huán)境變量以后,點(diǎn)擊確定(部分帖子介紹需要重啟電腦才能生效)
2. 系統(tǒng)要求
要安裝并運(yùn)行Flutter,您的開發(fā)環(huán)境必須滿足以下最低要求:
操作系統(tǒng): Windows 7 或更高版本 (64-bit)
磁盤空間: 400 MB (不包括Android Studio的磁盤空間).
工具: Flutter 依賴下面這些命令行工具.
Git for Windows (Git命令行工具)
如果已安裝Git for Windows,請確保命令提示符或PowerShell中運(yùn)行 git 命令,不然在后面運(yùn)行flutter doctor時(shí)將出現(xiàn)Unable to find git in your PATH錯(cuò)誤, 此時(shí)需要手動(dòng)添加C:\Program Files\Git\bin至Path系統(tǒng)環(huán)境變量中。
3. 獲取Flutter SDk
獲取[獲取Flutter SDK](Flutter SDK)
去flutter官網(wǎng)下載其最新可用的安裝包,點(diǎn)擊下載 ;
注意,F(xiàn)lutter的渠道版本會(huì)不停變動(dòng),請以Flutter官網(wǎng)為準(zhǔn)。另外,在中國大陸地區(qū),要想正常獲取安裝包列表或下載安裝包,可能需要翻墻,讀者也可以去Flutter github項(xiàng)目下去下載安裝包 。
將安裝包zip解壓到你想安裝Flutter SDK的路徑(如:C:\src\flutter;注意,不要將flutter安裝到需要一些高權(quán)限的路徑如C:\Program Files\)。
在Flutter安裝目錄的flutter文件下找到flutter_console.bat,雙擊運(yùn)行并啟動(dòng)flutter命令行,接下來,你就可以在Flutter命令行運(yùn)行flutter命令了。
注意: 由于一些flutter命令需要聯(lián)網(wǎng)獲取數(shù)據(jù),如果您是在國內(nèi)訪問,由于眾所周知的原因,直接訪問很可能不會(huì)成功。 上面的PUB_HOSTED_URL和FLUTTER_STORAGE_BASE_URL是google為國內(nèi)開發(fā)者搭建的臨時(shí)鏡像。詳情請參考 Using Flutter in China
上述命令為當(dāng)前終端窗口臨時(shí)設(shè)置PATH變量。要將Flutter永久添加到路徑中,請參閱更新環(huán)境變量。
說白了就是配置flutter的環(huán)境變量

要更新現(xiàn)有版本的Flutter,請參閱升級(jí)升級(jí)Flutter。
3. 運(yùn)行測試
打開命令還運(yùn)行 flutter doctor

注意查看運(yùn)行內(nèi)容,如有報(bào)錯(cuò)會(huì)給出對應(yīng)的 flutter命令進(jìn)行處理。作者在這個(gè)地方并沒有與坑,暫且跳過
4. Android studio與Flutter
作為goole旗下的Flutter和AS。Android studio對Flutter的開發(fā)提供了完美的支持。當(dāng)然這也是作為Android開發(fā)者的福音,起碼不需要更換開發(fā)工具,浪費(fèi)時(shí)間去適應(yīng)新工具了。
But
AS建議使用最新版本(本人AS3.5.2)
模擬器或者測試真機(jī)Android 4.1及以上
AS開發(fā)Flutter需要Flutter和Dart插件這兩位好兄弟來助陣。
插件的安裝,簡單的介紹兩句安裝步驟
File-setting-Plugin
分別搜索Flutter和Dart進(jìn)行插件安裝


安裝完畢重啟AS
小知識(shí)點(diǎn):
完成插件的安裝以后,需要配置下flutter的sdk

根據(jù)自己實(shí)際情況,選擇Flutter的sdk路徑,配置完成以后,AS會(huì)自動(dòng)給Dart也配置上sdk路徑??梢皂樖值目匆幌?br>

5.創(chuàng)建第一個(gè)Flutter
以上安裝并部署完成Flutter環(huán)境,我們即將與Flutter來一次緊密接觸
新建項(xiàng)目與創(chuàng)建Android項(xiàng)目類似,只是你會(huì)發(fā)現(xiàn),安裝了Flutter的AS多了一個(gè)New Flutter Project的選項(xiàng)

一路next 人品好的情況下完成人生第一個(gè)Flutter application的創(chuàng)建,連接機(jī)器run起來

下一篇,重點(diǎn)講講運(yùn)行第一個(gè)Flutter過程中爬過的坑