Mac OS Flutter环境配置详解

系统要求

要安装并运行Flutter,您的开发环境必须满足以下最低要求:
  • 操作系统: macOS (64-bit);
  • 磁盘空间: 700 MB (不包括Xcode或Android Studio的磁盘空间);
  • 工具: Flutter 依赖下面这些命令行工具;

bash, mkdir, rm, git, curl, unzip, which

获取Flutter SDK

要获得Flutter,请先使用git克隆Flutter,然后将该flutter工具添加到您的用户路径。
如果这是您第一次在此机器上安装Flutter,请克隆beta分支,然后将该flutter工具添加到您的系统路径中:
git clone -b beta https://github.com/flutter/flutter.git
export PUB_HOSTED_URL=https://pub.flutter-io.cn //国内用户需要设置
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn //国内用户需要设置
export PATH=`pwd`/flutter/bin:$PATH
注意: 以上配置命令为当前终端窗口临时设置PATH变量,你会发现系统重新启动后配置的PATH变量丢失,在终端执行flutter doctor 提示command not found 。所以我们要将Flutter PATH环境变量永久添加到系统路径中,以便可以运行flutter命令在任何终端会话中。
具体步骤如下:

1.确定您Flutter SDK的目录,您将在步骤3中用到;
2.在终端打开(或创建) $HOME/.bash_profile. 文件路径和文件名可能在您的机器上不同;
3.添加以下行并更改[PATH_TO_FLUTTER_GIT_DIRECTORY]为克隆Flutter的git repo的路径;

下面贴一个笔者本机(mac)的环境变量配置
//Android sdk 环境变量配置(没配置的需要配置)
export ANDROID_HOME="/Users/geek/Library/Android/sdk" 
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools

//Flutter sdk 环境变量配置
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export PATH=/Users/geek/flutter/bin:$PATH
//注意说明:geek为我本机的用户名,配置时请替换为你自己本机的用户名;注意确认自己Flutter SDK本机路径;

注意: 由于一些flutter命令需要联网获取数据,如果您是在国内访问,由于众所周知的原因,直接访问很可能不会成功。 上面的PUB_HOSTED_URL和FLUTTER_STORAGE_BASE_URL是google为国内开发者搭建的临时镜像。

以上配置完成后执行以下命令:
//1.刷新当前终端窗口
source $HOME/.bash_profile
//2.查看Flutter配置是否已经在PATH环境变量
echo $PATH
运行 flutter doctor 显示您可能需要安装的剩余依赖项
sunnydeMacBook-Pro:cache geek$ flutter doctor
  ╔════════════════════════════════════════════════════════════════════════════╗
  ║ WARNING: your installation of Flutter is 74 days old.                      ║
  ║                                                                            ║
  ║ To update to the latest version, run "flutter upgrade".                    ║
  ╚════════════════════════════════════════════════════════════════════════════╝


Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.5.1, on Mac OS X 10.11.6 15G20015, locale zh-Hans)
[!] Android toolchain - develop for Android devices (Android SDK 28.0.2)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses
[!] iOS toolchain - develop for iOS devices (Xcode 8.2.1)
    ✗ Flutter requires a minimum Xcode version of 9.0.0.
      Download the latest version or update via the Mac App Store.
    ✗ Brew not installed; use this to install tools for iOS device development.
      Download brew at https://brew.sh/.
[✓] Android Studio (version 3.1)
[✓] IntelliJ IDEA Ultimate Edition (version 2018.2)
[!] Connected devices

! Doctor found issues in 3 categories.
一般的错误会是xcode或Android Studio版本太低、或者没有ANDROID_HOME环境变量等,请按照提示解决。本机执行flutter doctor命令后提示老版本,需更新至最新版本;

更新Flutter SDK 至最新版本

sunnydeMacBook-Pro:cache geek$ flutter upgrade
Upgrading Flutter from /Users/geek/flutter...
From https://github.com/flutter/flutter
   01d6444..ef71d9d  master     -> origin/master
Already up-to-date.

Upgrading engine...
Already up-to-date.

Flutter 0.5.1 • channel beta • https://github.com/flutter/flutter.git
Framework • revision c7ea3ca377 (3 months ago) • 2018-05-29 21:07:33 +0200
Engine • revision 1ed25ca7b7
Tools • Dart 2.0.0-dev.58.0.flutter-f981f09760

Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.5.1, on Mac OS X 10.11.6 15G20015, locale zh-Hans)
[!] Android toolchain - develop for Android devices (Android SDK 28.0.2)
    ! Some Android licenses not accepted.  To resolve this, run: flutter doctor --android-licenses
[!] iOS toolchain - develop for iOS devices (Xcode 8.2.1)
    ✗ Flutter requires a minimum Xcode version of 9.0.0.
      Download the latest version or update via the Mac App Store.
    ✗ Brew not installed; use this to install tools for iOS device development.
      Download brew at https://brew.sh/.
[✓] Android Studio (version 3.1)
[✓] IntelliJ IDEA Ultimate Edition (version 2018.2)
[!] Connected devices

! Doctor found issues in 3 categories.
遇到打开Android Studio的时候顶部的模拟器一直是loading状态,即使已经打开了模拟器。 运行flutter doctor 提示如下:
Waiting for another flutter command to release the startup lock

查了一下github的flutter issue 找到了解决方法,如下:
1、打开flutter的安装目录/bin/cache/ ;
2、删除lockfile文件(rm -rf lockfle);
3、重启AndroidStudio;

Android Studio配置Flutter环境

  • 启动Android Studio.
  • 打开插件首选项 (Preferences>Plugins on macOS,File>Settings>Plugins on Windows & Linux).
  • 选择 Browse repositories…, 选择 Flutter 插件并点击 install.
  • 重启Android Studio后插件生效.
    具体如下图所示:


    1.png

配置Flutter SDK路径

2.png

配置Dart SDK路径

3.png

创建Flutter 工程

首次创建Flutter工程可能会有一个漫长的等待过程
4.png

完美运行第一个Flutter应用

调试状态下运行应用启动后右上角会有一个DEBUG的标志
WechatIMG84.jpeg
总结:配置Flutter的过程配置了两次,第一次配置是在当前终端窗口临时设置PATH变量,系统重启后配置丢失了,执行flutter doctor,提示命令无效,打开Android Studio创建Flutter工程一直漫长的等待,就想着是否哪里配置有问题。就又虑一遍配置细节,终于配置完成。以上是所有配置过程,希望能帮到你。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 198,082评论 5 464
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,231评论 2 375
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 145,047评论 0 327
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,977评论 1 268
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,893评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,014评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,976评论 3 388
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,605评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,888评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,906评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,732评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,513评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,980评论 3 301
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,132评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,447评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,027评论 2 343
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,232评论 2 339

推荐阅读更多精彩内容