編程里每次涉及環(huán)境配置,軟件安裝的雖說都要例常折騰一下,但是還真沒碰到 Flutter 這么能折騰的
本文是 mac 版的,window 不涉及
安裝 Flutter SDK,下載 Dart
- 國內(nèi)訪問 Flutter 受到限制,需要再 MAC path 里添加 Flutter 官方指定鏡像,打開命令行輸入以下命令
// 打開 path 配置文件
open -e .bash_profile
// 加入鏡像
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
// 刷新配置文件
source .bash_profile
- git clone Flutter SDK
有了鏡像地址就能把 Flutter SDK 搞下來了,在根目錄運行
git clone -b beta https://github.com/flutter/flutter.git
速度挺快的,1分鐘就 OK
3.添加 Flutter path 到 MAC path 配置文件中
下面這是官方指定參考,大家按照這個來,不光 Flutter 的 path,其他的大家也可以參考
export PATH=/Users/用戶名/Documents/flutter/flutter/bin:$PATH
export ANDROID_HOME="/Users/用戶名/Documents/android_sdk" //android sdk目錄,替換為你自己的即可
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
- 檢測 Futter 運行環(huán)境
執(zhí)行這個命令
Flutter doctor
首先會下載 Dart 下來,然后會檢測 Flutter 需要的配置,√
的選項說明沒問題,!
說明有問題需要解決
- AS 最低 3.0
- android toolchain 這里大家一般都有問題,解決辦法是根據(jù)提示,運行
flutter doctor --android-licenses
然后一路 yes,就可以了
AS 安裝插件
你以為這就完事了嘛,沒呢,AS 還需要 Flutter 和 Dart 插件呢,這里我不多說了,安裝插件大家都會,看好名字別安裝錯了,安裝完重新 AS
第一個坑
Flutter 創(chuàng)建出的項目 local.properties 里的 android SDK 路徑是瞎寫的,需要改成自己的 SDK 路徑
第二個坑
上面大家做好了,F(xiàn)lutter 環(huán)境算是搞完了,但是別高興,還沒完呢,后面還有坑等著呢...
大家會發(fā)現(xiàn)在創(chuàng)建第一個 Flutter 項目時,會一直卡在 Create Flutter Project 這里,這是必現(xiàn)的問題,解決辦法非常蛋疼
- 先創(chuàng)建 Flutter plugin 項目,然后等著創(chuàng)建完畢
- 再來 Flutter Application 項目就 OK 了
第一次創(chuàng)建 Flutter 項目很耗時,看著就跟假死一樣,一班5分鐘過去還是不行的話強退重來。另外 Flutter 項目名第一個字幕不能大寫
不要質(zhì)疑這個解決辦法,經(jīng)測試只有這一個方法靠譜...
說實話,我想不明白啊,為啥 Goolg 要搞得這么復雜,痛痛快快的不好嘛,Goolge 出的 IDE 上手都蛋疼
第三個坑
很多人鏈接不上 google() 這個遠程庫,然后很大幾率編譯錯誤,會提示這個錯,或者有的朋友編譯時一直卡在 Initializing gradle 這里
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
}
處理起來有幾種方法,不一定都適用每個人
- 有的朋友掛 VPN 都不 OK 的話,就換手機熱點試試,熱點不 OK 就再熱點里掛 VPN,有不少哦鞥有就能連上了
- 還不 OK 的話,就只有使用代理了
- android 項目 gradle 文件添加下面阿里的代理
buildscript {
repositories {
// google()
// jcenter()
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' }
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
}
allprojects {
repositories {
// google()
// jcenter()
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' }
}
}
- 修改 Flutter SDK 里的 gradle 配置,路徑:
flutter? ? ?packages? ? ?flutter_tools? ? ?gradle
buildscript {
repositories {
//注視掉原有的,采用鏡像地址下載
// google()
// jcenter()
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'
}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
}
第四個坑 - 缺少 SDK 證書
flutte 需要 android SDK 授權(quán),要不會報下面這個錯
License for package Android SDK Build-Tools 28.0.3 not accepted
問題解決起來不難,android SDK 提供了授權(quán)工具,我們運行以下就行,工具地址在:
- -> Android sdk 路徑/tools/bin 里的 sdkmanager.bat 文件
最后
好了經(jīng)過上面的一頓折騰,F(xiàn)lutter 總算是能跑起來了,真尼瑪費勁啊,Google 這是要干啥...