Flutter环境搭建及版本管理

前言

Flutter已成为移动应用开发的主流选择,其跨平台优势日益凸显,使学习Flutter成为现代开发者的必备技能。越来越多的公司和团队选择Flutter构建应用,这为开发者提供了更广阔的就业机会和职业发展空间。Flutter的热度源自其强大的特性和生态系统支持,包括快速的开发周期、高性能的渲染引擎、丰富的UI组件和易学的Dart编程语言。此外,Flutter不仅适用于移动应用开发,还可用于桌面和Web应用,为开发者提供了更多创作空间和机会。学习Flutter能够帮助开发者快速掌握跨平台开发技能,促进职业发展,助力在竞争激烈的市场中脱颖而出,实现个人的技术和职业目标。

Flutter环境搭建

俗话说的好,万层高楼平地起,学习Flutter首先第一步就是环境的搭建,那么这里第一课就是学习搭建Flutter环境,因为我们开发都提倡使用Mac开发,所以本篇文章主要是围绕Mac系统搭建Flutter环境。其他系统可以参考官方教学或者博文文章自行学习。

1、查看本机环境配置

  1. 查看本机环境文件
  • 命令查看:
echo $SHELL

结果:

image.png
  • 直接打开终端,看顶部标题如果是zsh,如上图红圈1所示,就是说明环境配置文件是那个了。
  1. 查看本机环境配置

在 macOS 系统中,使用的是 bash 终端:

cat ~/.bash_profile

使用的是 zsh 终端:

cat ~/.zshrc

执行命令后,就能看到当前环境配置了。如下图

image.png

2、修改本机环境配置

  • 打开环境变量文件

bash 终端:

vim ~/.bash_profile

zsh 终端:

vim ~/.zshrc
  • 修改终端编辑状态

英文键盘状态下按 “i”切换到可编辑状态。

  • 修改环境变量设置:

在配置文件中添加、修改或删除您需要的环境变量设置。

  • 保存并退出编辑器:

首先按“esc”键退出编辑状态, 在按“:wq”+回车,进行保存修改并退出编辑器。

  • 生效配置文件

bash 终端则运行:

source ~/.bash_profile      

zsh 终端 则运行:

source ~/.zshrc 

通过这些步骤,您可以切换终端使用的环境变量文件,并确保终端在启动时加载所需的环境变量设置。

3、下载Flutter SDK

  • SDK 下载链接

https://flutter.cn/docs/release/archive?tab=macos

  • 解压SDK放置位置

如:Users/zhouweilong/fvm/versions/3.10.0

4、配置Flutter环境配置

  • 执行命令 vim ~/.bash_profile or vim ~/.zshrc 打开配置文件。

  • 点击“i” 进入编辑状态

  • 在配置文件中加上Flutter sdk配置信息

export PATH=$HOME/fvm/versions/3.10.0/bin:$PATH
  • 按esc退出编辑状态,输入“:wq”保存退出。

  • 执行命令“source ~/.bash_profile or source ~/.zshrc”让配置生效。

  • 执行“flutter --version”如下

image.png

代表flutter环境配置好了。

5、重点提醒

国内的网络环境下可能需要对 Flutter 工具进行一些额外配置,请参考文档 在中国网络环境下使用 Flutter

根据文档可知需而外配置2项

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

Flutter版本管理

1、为什么要版本管理

  • 多个项目和团队协作

在开发多个 Flutter 项目或与其他开发者协作的情况下,每个项目可能需要使用不同的 Flutter 版本。通过版本管理,您可以为每个项目指定特定的 Flutter 版本,从而确保团队成员在同一开发环境中工作,减少因 Flutter 版本不一致而导致的问题。

  • 测试和回滚

当您的应用程序在新版本的 Flutter 上运行时出现问题时,版本管理可以使您更轻松地回滚到之前的稳定版本,从而减少测试和修复问题所需的时间和精力。

  • 新功能和实验性特性

Flutter 的新版本可能包含实验性特性或试验性功能,这些功能可能对您的应用程序产生积极或负面的影响。版本管理可以帮助您在开发过程中轻松切换和测试这些功能,以便您可以更好地了解它们,并确定是否要在应用程序中使用它们。

  • 学习开源项目

当我们在github或者其他地方下载值得学习的项目时,会发现项目使用的Flutter版本不一样,来回切换环境配置非常麻烦。所以版本管理可以有效的解决这个问题。

综上所述,版本管理对于确保 Flutter 应用程序的稳定性、兼容性和可维护性非常重要。它可以帮助开发者更好地管理 Flutter 的使用和更新,并确保团队之间的协作顺畅。

2、FVM 版本管理

  • FVM是什么

官方:https://fvm.app/

  • FVM安装

Mac使用brew进行安装 ,其他系统安装具体链接:点击这里

brew tap leoafarias/fvm
brew install fvm

确定是否安装成功

image.png
  • FVM环境配置

官方:https://fvm.app/documentation/getting-started/configuration

FVM_CACHE_PATH:指定Flutter版本的缓存路径。

FVM_GIT_CACHE:全局启用/禁用 git 缓存 ( true/ false)。

FVM_GIT_CACHE_PATH:设置本地git引用缓存的路径。

FVM_FLUTTER_URL:定义 Flutter 存储库 git URL。

FVM_PRIVILEDGED_ACCESS:启用/禁用 FVM 的特权访问 ( true/ false)。

案例:

export FVM_FLUTTER_URL=https://github.com/flutter/flutter.git
export FVM_CACHE_PATH=$HOME/fvm
export PATH=$PATH:~/fvm/default/bin
  • 执行 fvm use 3.10.0
image.png
  • 全局配置Flutter版本
fvm global 3.0.5

//环境变量配置
export PATH=$PATH:~/fvm/default/bin

执行命令后,全局flutter使用版本就变成了3.0.5,不用修改配置文件了

3、如何在项目中使用FVM切换版本

  • 打开案例项目flutter_project ,执行 fvm use ,项目根目录会出现一个.fvm文件夹
image.png
  • 我们可以复制flutter_sdk全局路径配置flutter使用路径,方便fvm切换版本

第一步:


image.png

第二步:

image.png

第三步:

image.png

配置完后,直接使用fvm use xxx,xxx就是flutter的版本号,执行命令后,项目就会自动切换到xxx版本上了,是不是很方便。

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

推荐阅读更多精彩内容