mac安装Flutter初体验(最新)

最近捣腾了一下Flutter,故写下这篇文章给大家分享一下如何在mac下安装Flutter.

安装环境

  • Android Studio 4.0.1
  • Xcode 11.7
  • flutter 1.20.4

准备工作

0x00 安装 Android Studio

Android Studio是Google官方提供的Android应用IDE,官网下载链接:戳这里,当前最新版本为4.0.1。

运行Android Studio,按照向导提示一步一步走下去:

  1. 选择Do not import settings.


    Do not import settings
  2. 弹框选择cancel.


    选择cancel
  3. 弹出点击Next.


    Next
  4. install Type选择Standard,点击Next.


    选择Standard
  5. 静静等待组件下载并自动安装完成.

0x01 安装Xcode

如果您是苹果开发者可以跳过此步。Xcode直接在App Store安装即可,安装完成打开Xcode自动安装配置组件,完成后输入命令open -a Simulator打开 iOS 模拟器,至此Xcode安装完毕。

0x02 安装Flutter

Flutter官网下载当前最新稳定版本(1.20.4),如果官网无法打开,可以去Flutter.cn下载:

Flutter下载

下载完成后放到你想要的目录解压,笔者放到了~/Flutter目录下,zip包解压后flutter的bin目录的路径为:~/Flutter/flutter/bin

对于macOS系统,我们可以编辑~/.bash_profile文件,将flutter命令添加到环境变量PATH中,添加如下代码:

export PATH=~/Flutter/flutter/bin:$PATH

添加完成后重启命令行工具,我们来试试输入flutter --version命令查看当前版本,配置正确的话,可以得到当前flutter的版本:

admin@admindeMac ~ % flutter --version
Flutter 1.20.4 • channel stable • https://github.com/flutter/flutter.git
Framework • revision fba99f6cf9 (6 days ago) • 2020-09-14 15:32:52 -0700
Engine • revision d1bc06f032
Tools • Dart 2.9.2

至此我们初步完成了flutter的基本环境安装,由于Flutter源站在国内可能不太稳定,因此谷歌中国开发者社区(GDG)专门搭建了临时镜像,使得我们的 Flutter 命令行工具可以到该镜像站点下载所需资源。编辑~/.bash_profile 文件,添加如下代码配置镜像站点环境变量:

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

如果后续读者发现镜像站点无法访问,可以去Flutter社区获取最新的中国可用镜像站点,更新~/.bash_profile文件即可。

至此,我们已经把几个比较重要的工具安装完成,接下来可以使用flutter doctor命令来检查一下flutter的环境是否完全搭建好:

flutter doctor

可以看到[!]标注的是警告,我们可以按照提示运行flutter doctor --android-licenses解决。而[x]标注的是错误,必须解决,这里提示我们没有安装Flutter plugin和Dart plugin。我们打开Android Studio->Prefenrencs->Plugin,在Marketplace栏搜索flutter,安装flutter plugin:
安装flutter plugin

安装完成后重新运行flutter doctor命令,可以看到已经没有错误了:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 1.20.3, on Mac OS X 10.15.6 19G2021, locale zh-Hans-CN)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
[!] Xcode - develop for iOS and macOS (Xcode 11.7)
    ! CocoaPods 1.7.5 out of date (1.8.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to
        your plugin usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade:
        sudo gem install cocoapods
[✓] Android Studio (version 4.0)
[!] Connected device
    ! No devices available

运行Hellow word

在flutter/examples目录下,有一些flutter的实例项目,用Android Studio打开hello_world目录,首次打开hellow_word项目,会提示'Pub get'has not been run:


'Pub get'has not been run

我们点击右侧的'Get dependencies',Android Studio会自动运行flutter pub get:

flutter pub get
Running "flutter pub get" in hellow_word...                              1.7s
Process finished with exit code 0

0x00 iOS模拟器运行

在顶部设备列表选择'Open iOS Simulator'打开iOS模拟器,选择指定的iOS模拟器后直接Run即可。


iOS 模拟器

0x01 Android模拟器运行

我们需要先添加一个安卓模拟器,在工具栏右侧点击AVD Manager按钮添加安卓模拟器:


image.png

详细添加过程不再赘述,这里我创建了一个Pixel3 API 27的模拟器,选择之后开始Run。

遇到的问题

如果你可以顺利的编译并运行到安卓模拟器上,可以跳过此段内容。
在编译运行过程,我遇到了一个错误:

Exception in thread "main" java.util.zip.ZipException: error in opening zip file

解决方法:
在根目录使用快捷键Shift+Command+.显示隐藏文件和目录,删除.gradle目录,重新编译运行项目,这个时候会重新创建.gradle目录并下载相应文件,耐心等待即可。

总结

本文主要介绍了flutter的环境搭建过程,并在iOS和Android模拟上成功运行hellow_word项目。希望本文可以给你带来帮助。

注意:随着时间的推移,相关开发环境可能会升级更新,文中的方法不一定适用。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,126评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,254评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,445评论 0 341
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,185评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,178评论 5 371
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,970评论 1 284
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,276评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,927评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,400评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,883评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,997评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,646评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,213评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,204评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,423评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,423评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,722评论 2 345