博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mac flutter 开发环境配置 从0到1 流程
阅读量:5973 次
发布时间:2019-06-19

本文共 6293 字,大约阅读时间需要 20 分钟。

本文首发简书,本人为原作者,转至掘金

转载请注明出处
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

我这里使用,一个免费的开源的命令行工具

默认的命令行工具用launchpad=> 其他 => 终端打开

zsh,用于替换bash环境,直接命令行中敲zsh,即可进入,修改默认zsh的可以自行百度

oh my zsh,一个zsh插件 具体可以自行百度

一个很方便的包管理工具,基于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

打开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

官网

有能力的同学这里自己进入按照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的

你可能感兴趣的文章
Linux系统安装ORACLE
查看>>
Error code signing
查看>>
This用法和闭包
查看>>
JSP页面获取系统时间
查看>>
L-1-19 Linux之RAID&分区&文件系统命令
查看>>
stat查找权限以数字形式显示
查看>>
Java面向对象学习笔记(二)
查看>>
源码编译安装httpd2.4.9
查看>>
linux系统优化
查看>>
在使用 Windows Update 检查更新时,系统没有提供下载 Windows 7 SP1 的选项
查看>>
CSS控制XML与通过js解析xml然后通过html显示xml中的数据
查看>>
在Struts + Spring + Hibernate的组合框架模式中,三者各自的特点都是什么
查看>>
Windows 2012 R2 DataCenter服务器DNS无法打开AD, DNS错误代码4000 4007 4013
查看>>
网络学习(二十一)创建用户及文件夹共享设置的简单应用
查看>>
java基础数据类型char
查看>>
打印 PE导入导出表
查看>>
miniWindbg 功能
查看>>
五、判断银行卡号的正则
查看>>
mysql基于mysqlslap的压力测试
查看>>
zencart中query_factory.php中连接mysql次数
查看>>