本文首发简书,本人为原作者,转至掘金
转载请注明出处
原文连接
掘金连接
https://www.jianshu.com/p/c55ad0e8f24f

高能提示:文章字数不多,图很多,请做好战斗准备

前言

写这篇文章的原因是我自己的macbook开不开机,返修后,所有开发环境全部没有了,正好要重新配置开发环境,所以写一个从零配置的文章
因为flutter涉及到跨平台开发,所以预想中会包含四部分
mac篇,android篇,ios篇,flutter篇

术语相关

cmd = command键(空格左边)
opt/alt = option键(cmd左边)
ctrl = control(opt左边)
cli = 命令行工具(command-line interface,命令行界面)
as = Android Studio

写在前面

最低需要xcode 9.0.0 以上的xcode版本
但是不建议从非官方渠道下载xcode,以免遇到之前盗版xcode的问题

我就是都装好了8.3才告诉我这个,没办法只能升级系统,再升级xcode

mac篇

所谓mac篇就是一些基础的环境,和效率工具

后面会使用

cli

我这里使用iterm2,一个免费的开源的命令行工具
默认的命令行工具用launchpad=> 其他 => 终端打开

zsh,用于替换bash环境,直接命令行中敲zsh,即可进入,修改默认zsh的可以自行百度
oh my zsh,一个zsh插件 具体可以自行百度

brew 一个很方便的包管理工具,基于ruby+git
命令行敲
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"即可
这里会自动安装xcode命令行环境,git环境,需要输入密码确认

效率篇

Alfred 一个快速开启app的辅助工具
Paw http工具
Sip 取色器

dmg相关

遇到提示dmg损坏,不要着急 并不一定是真的损坏里,参考这里 https://bbs.feng.com/read-htm-tid-10584598.html ,允许所有的来源即可

对于mac新手来说,可能不会使用dmg,双击打开,有允许点允许,有dmg密码输入密码,最后将应用拖入到application/应用里,一般dmg里都有快捷方式,没有的话自己打开finder/访达,拖到应用程序里面也行

环境变量相关

不会配置环境变量的,这要仔细看了
在cli中敲对应的命令即可

export NAME=VALUE //加入环境变量
unset NAME //删除环境变量

source fileName //使重新读取配置文件

这个敲击仅当前cli或衍生cli有效,想要永久生效就要将配置加入配置文件中

默认是bash,所以我们编辑bash的配置文件
vi .bash_profile 我这里使用的是vim工具,如果不习惯 后续的vi可以换成open ,遇到文件不存在就先敲touch $fileName

默认是没有.bash_profile 文件的,创建 并添加
export PATH=XXXXX:$PATH
这里XXX代表了你自己的环境变量(adb,jdk,flutter)等

因为我使用的是zsh,这里配置zsh相关的,让zsh可以“读取”到bash的配置即可

vi .zshrc
复制代码

在最后一行添加
source .bash_profile
保存,退出

vi个人常用命令
i插入 a在后插入
shift+4 行尾
l+数字,enter 指定行号
dd 删除行
yy 复制行
p 粘贴行
:wq 保存退出
:q 保存退出
:q! 强制退出不保存

ios篇

从app store安装xcode,建议不要使用迅雷等工具下载

我这里不是最新的mac os版本,所以需要下一个旧的xcode

等待漫长的安装,然后运行xcode

只能同意

等待中

看到这里xcode就算ok了

插一句,我这里因为先安装了brew,所以xcode命令行工具预先安装到了mac里,如果没装brew,这里可能会提示安装xcode命令行工具,git等等,请同意即可

点击cmd+,打开首选项

左下角加号 apple id 来登陆你自己的苹果开发者账号/ 不是开发者也能开发ios 就是不能上传apple store

android环境篇

android studio安装

这里我使用一个中文镜像 http://www.android-studio.org/ 下载
有梯子的可以去 android官网下载

拖到application里

打开

出现这个不要紧 cancel就行

一路next

finish

等待,这里大部分的资源目前应该不需要梯子,头几年都是要翻才能下的

finish

出现这个窗口就说明android的环境ok了

配置android的环境变量

jdk

oracle jdk1.8

打开dmg
双击pkg
一路next

新开一个命令行
javac -version
java -version

能正确显示版本号即可

添加javahome环境变量

如果你是pkg安装的,先看看java安装目录,自己解压的压缩包那就按照自己的目录

/usr/libexec/java_home -V
复制代码

复制这里的最后一行 也就是那个Home的目录

配置在.bash_profile里

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
复制代码

别忘了

source .bash_profile
复制代码
androidsdk

如果是通过刚刚的android studio自动安装的,则目录会在/Users/caijinglong/Library/Android/sdk
这里根据你的用户名不同会有不同的地址,继续添加到.bash_profile中

目前我的.bash_profile是这样的

export ANDROID_HOME=/Users/caijinglong/Library/Android/sdk/
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$ANDROID_HOME/platform-tools:$PATH
复制代码

第三行的$JAVA_HOME/bin 有没有其实没关系
现在返回cli中,敲adb会出现很长的英文,这个是adb命令的说明
能出现则说明成功,不成功的话请重新检查下环境变量是不是没配置好

flutter篇

终于要开始flutter篇了

pub环境变量

这里建议没有常驻翻墙的同学打开下面的页面,配置下中文的pub镜像,pub是dart官方提供的一个中心仓库,可以将依赖/开源库上传到上面
https://github.com/flutter/flutter/wiki/Using-Flutter-in-China

官网

有能力的同学这里自己进入flutter官网按照mac篇进行配置
或者继续看下去

开始安装flutter

cli:

cd ~/Library
mkdir Flutter && cd Flutter
复制代码

这里可能会比较慢 可以使用gitee的镜像来clone

//github
git clone -b dev https://github.com/flutter/flutter.git    //gitee(我同步github的库)
git clone -b dev https://gitee.com/kikt/flutter.git
复制代码

后续修改git的remote为github地址即可

git remote set-url origin https://github.com/flutter/flutter.git
复制代码

查看下

git remote -v
复制代码

配置flutter的环境变量

这里配置flutter_home

export FLUTTER_HOME=/Users/caijinglong/Library/Flutter/flutter
export PATH=$JAVA_HOME/bin:$ANDROID_HOME/platform-tools:$FLUTTER_HOME/bin:$PATH
复制代码

接着返回cli

cd ~
source .bash_profile
flutter doctor -v
复制代码

这个flutter doctor -v
就是显示flutter的环境问题,以后可能会经常敲

这里加-v就是详情,如果有问题需要帮助,这里一定要带-v
这里加-v就是详情,如果有问题需要帮助,这里一定要带-v
这里加-v就是详情,如果有问题需要帮助,这里一定要带-v

这里加-v就是详情,如果有问题需要帮助,这里一定要带-v

接着就是漫长的等待,这里会下载flutter的相关构建工具等等

这里带X的就是有问题的,我们需要一项项的去解决
大部分都给了cli方案 就是run: 后面的东西
这里我们看到了建议大家使用brew去安装这些库,这也是为什么我这里开篇就介绍如何安装brew的原因

这里我标记了6个问题

  1. android 许可证问题

flutter doctor --android-licenses
一路y过去

  1. xcode的问题

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer

  1. flutter ios工具链的问题

这里需要使用brew安装一些工具以帮助flutter可以调试ios程序,你模拟器能跑起来,但是ios真机不行大概率就是这里的原因
cli:

brew install --HEAD libimobiledevice`
复制代码

这里会安装很多的二进制库

完成后继续下一步

brew install ideviceinstaller
复制代码

这里比较简短

brew install ios-deploy
复制代码
  1. 这里是ios开发相关的了

使用cocoapod作为ios的库管理工具,这个是ios开发中很常见的一个包管理工具,我们按照提示安装

brew install cocoapods
复制代码

接着是安装pod的库相关的索引

pod setup
复制代码

这里看到 下载速度还行,虽然没有国内快,但是也有接近4m的速度了,如果这里你的速度不佳,可以考虑使用gitee的spec中转,

这里因为涉及到的文件很多 百万级文件数量,所以会比较慢,耐心等待就行了
如果你是imac/mac mini 没有固态,建议你自己想办法加一个,不然这步时间可能1~3小时不等
我的2016款macbook pro是pcie的ssd,下载时间大概5分钟,“解压”也用了5分钟,全程10分钟左右

平心而论,pod的索引方式个人感觉很蠢,最初数量级小的情况下还算能接受,现在pod的库数量越来越多,用这种方式来做中心库索引简直接受不了,后面会越来越臃肿

  1. android studio 插件问题

在studio中点cmd+, 打开首选项
点击plugin

选下载人多的

点yes

然后耐心等待

完成后是这样的

点击重启后

问题解决完毕


我们返回到cli中 敲

flutter doctor -v
复制代码

这里我发现我这遇到里之前没有的问题,
第一个X提示我xcode需要最低9.0.0的版本
第二个X提示我缺少一个叫six的python库

我这里因为系统版本的原因下载不了9.0.0以上的xcode,只能升级版本后重新下载了,这个后面补上

先完成第二个,有两个选择 pip install six sudo easy_install six
根据提示敲击,我这里选择的是第二个

sudo easy_install six
复制代码

然后我们只剩下xcode的问题了,如果你的xcode版本没问题,那你可以跳过这里,直接看flutter的运行相关

系统更新

到mac app store中 去下载新的系统版本

完成后打开,接着一路下一步,都是中文,等待完成就行


系统更新完成,现在开始更新xcode

完成后,回到cli中

flutter doctor -v
复制代码

提示我要同意协议
这里可以打开xcode,也可以直接命令行敲击,建议直接打开xcode

我这里用命令行同意

sudo xcodebuild -license
复制代码

这里点enter(回车)
这里输入agree 回车
这里的错误还是需要打开xcode,所以前面建议你直接打开xcode app
这里之前遇到过,install就行了

到这里xcode的问题就都解决了

再次flutter doctor -v

pod又出问题了,还是应该先升级系统,再一次性安装,这又来了无用功
按提示走把

brew install cocoapods
复制代码

告诉我已经安装了 提示我reinstall

brew reinstall cocoapods
复制代码

这是最后一次了 除了没连接设备外,没其他问题了?

flutter部分的环境配置到这里基本完成了,接着就该运行项目了

运行项目

初次建立项目建议使用cli创建,因为会很慢,用as的话 你很难知道自己在等什么,甚至网络链接失败你都不知道

cli里敲击

flutter create hello_world
复制代码

项目名不能有大写字母,所以建议使用下划线作为单词的分隔

这样就代表项目的文件都ok了,接着按照提示进入项目内,这里慢的话 可能是获取依赖的时候卡住了

android运行

右上角

我这里新装的sdk,没有android的镜像,所以download下

完成后点finish即可

接着点选刚刚下载的,一路next+finish

运行后关闭device manager 回到主界面

这第一次运行会下载gradle,速度不好说,可能会很慢

这个会下载这个,你可以用迅雷复制这里的链接下载下来,复制到如下图的文件夹下

我这里速度很好,很快就跑起来了

ios运行

在as中点这个 会开启一个ios 模拟器
在开启模拟器成功后,发现as识别不到,这种情况不要怕

命令行敲flutter doctor -v 试试

我们看到,是有设备的,重启下as试试吧

设备出来了,我们点旁边的run(绿三角)试试吧

项目也跑起来了,大功告成

后记

整篇文章是我边搭环境边写的
可以说很详细了,中间我还走了xcode版本号的弯路
但是项目后来还是成功的跑起来了,希望各位看我文章的 也能成功

可以看到我开始的截图 macos版本是10.12.3
后来安装了新版本 变成了10.13.6

我单位的版本是10.12.6 那个macos版本是可以安装xcode 9.0的

mac flutter 开发环境配置 从0到1 流程相关推荐

  1. Mac Futter 开发环境配置 从0到1 流程

    前言 写这篇文章的原因是我自己的macbook开不开机,返修后,所有开发环境全部没有了,正好要重新配置开发环境,所以写一个从零配置的文章 因为flutter涉及到跨平台开发,所以预想中会包含四部分 m ...

  2. Deepin Linux上的Android+Flutter开发环境配置

    Deepin Linux上的Android+Flutter开发环境配置 在Linux上安装Flutter开发环境,官方教程参见Flutter Get Started,中国用户被墙需额外注意的官方教程参 ...

  3. flutter git 拉不起来_「干货」Flutter开发环境配置备忘录

    为什么要用Flutter? 嗯,本篇文章不会讲,因为我认为想看这篇文章的应该已经下定决心要学习Flutter. Flutter开发环境支持安装在Windows.Mac OS和Linux下,区别在于Wi ...

  4. Flutter开发环境配置

    文章目录 前言 一.打开Flutter官网 二.安装和环境配置 1.查看中国网络环境下使用flutter这篇文章 2.Mac上设置 3.Windows上设置 4.AndroidStudio插件安装 前 ...

  5. MAC M1 开发环境配置

    MAC JAVA.C++ .MySQL开发环境配置 JAVA(JDK) & IDEA & MAVEN JDK IDEA MAVEN GIT DOCKER 安装 挂载问题 K8s C++ ...

  6. mac电脑开发环境配置

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 安装终端分屏器iterm2 iterm2 配置标题栏显示当前路径 # put this in your .bash_profile if [ $ITE ...

  7. mac电脑开发环境配置-jdk、maven、git

    目录 一.java环境安装 1.oracle下载 2.java安装 3.系统路径配置 二.Maven 安装 1.maven下载并安装 2.系统路径设置 3.maven的settings.xml 三.G ...

  8. mac flutter开发环境搭建 zsh: command not found: flutter解决方案

    1.github下载flutter项目源码 博主下载到/Users/arthur/Documents/flutter/目录下,(arthur是我Mac的用户名) 2.配合环境变量,使用终端执行如下命令 ...

  9. pycharm 开发app_windows及mac下开发Excel, python+xlwings开发环境配置

    背景: 孩子他妈天天excel办公,看她每天大量重复性的工作,她是时候学习python来解放自己了,虽然我不用python ~ ~ 网络搜索 xlwings 是python下非常强大的处理Excel的 ...

最新文章

  1. bootstrap菜单展开收起_菜单展开及收缩效果 bootstrap+jquery
  2. Codeforces #528 Div2 F (1087F) Rock-Paper-Scissors Champion 树状数组+set
  3. The greatest happiness 2019-11-13
  4. 五分钟了解先验概率和后验概率
  5. vb.net2019- 串口serial port通信
  6. 最简单,最明了,看了就会的VScode和C++的配置!(Visual Studio Code)
  7. python 音速_webpack多页应用架构系列(十一):预打包Dll,实现webpack音速编译
  8. posix是什么_什么是POSIX? 理查德·斯托曼(Richard Stallman)解释
  9. android+ndk+r9+x64下载,Win7 64位中文旗舰版上Cocos2d-x 3.0的Android开发调试环境架设
  10. html语言的网页制作,HTML语言的网页制作技巧与方法
  11. php完全安装安装,服务器_Apache Web 服务器的完全安装指南,所需软件apache_ - phpStudy...
  12. ubuntu服务器系统不识别,U盘安装16.04server版 安装好后重启 无法进入系统
  13. 超强 | 保险单据在线OCR,秒速识别保单信息
  14. excel两个字符串相减_Excel小技巧|三种方法计算算式字符串
  15. django ajax jquery csrf_exempt 设置favicon.ico
  16. 华为浏览器不能下载linux,H5下载手游页面,华为手机浏览器不兼容
  17. android edittext禁止输入特殊字符,Android edittext 禁止输入特殊字符/或者表情符的方案...
  18. sql怎么与oracle连接,sql怎么连接oracle数据库
  19. CS(反恐精英)奥林匹克运动会
  20. 第27次CCF-CSP计算机软件能力认证(2022-09-18)

热门文章

  1. 关于简历的一点心得(纯属个人想法,非专业人士,欢迎批评指正~)
  2. 学编程要从什么开始学起
  3. Using Cobbler Web Interface
  4. CCIE学习(31)—— RIP知识回顾
  5. UWP DEP0700: 应用程序注册失败。[0x80073CF9] 另一个用户已安装此应用的未打包版本。当前用户无法将该版本替换为打包版本。...
  6. Hyper-V Server 存储空间
  7. [系列教程] Discuz模板的制作方法
  8. 通过修改PHP源代码解决Nginx下WebShell跨站的问题
  9. More Photos
  10. Silverlight在IE中无法显示但在Firefox中正常的原因和解决办法