- 安装fvm
- 配置fvm工作目录 和 配置fvm管理的flutter环境变量
- 下载并导入多版本的flutter
- 配置android studio工程
- 秒切flutter版本
1、安装fvm
fvm git官网
方法
https://github.com/befovy/fvm
brew tap befovy/taps
brew install fvm
当前brew 安装的版本0.8.0
fvm --version
修改fvm的工作目录
编辑~/.bash_profile
如果是zsh,编辑~/.zshrc
如何查看是bash还是zsh:
echo $0
-zsh
添加以下内容:
##我的配置信息 start##
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export FLUTTER_ROOT=/opt/fvm/current
export FVM_HOME=/opt/fvm
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export PATH=$PATH:$HOME/.pub-cache/bin
export PATH=$PATH:$FLUTTER_ROOT/bin/cache/dart-sdk/bin
export PATH=$PATH:$FLUTTER_ROOT/bin
export DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer/
export ANDROID_HOME=~/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools
## 我的配置信息 end##
注意上面的FVM_HOME一定要设置,默认不是这里,默认的目录比较深,不方便以后查看管理。
修改好以后,执行source ~/.zshrc或者关闭终端重启。这样会重新load刚才添加环境变量配置,使之生效。
准备fvm的工作目录
创建fvm文件夹,就是FVM_HOME
可以是其他目录,比如移动硬盘内的目录。
sudo mkdir -p /opt/fvm
修改限为可读写
sudo chown -R $(whoami) /opt/fvm
3、下载并导入多版本的flutter
fvm install 1.17.3
先执行一下,这里是会报错。
但是会初始化fvm的工作目录
.fvmhome
versions
config.yaml
current
如果没有继续往下手动操作,手动创建一个 versions 目录:
cd /opt/fvm
mkdir versions
拷贝之前电脑上的安装过的flutter版本。到/opt/fvm/versions
或者重新去下载flutter安装库,以前下载的flutter就不要了,自行删除即可
下载对应版本后,解开压缩包,重新修改名字为对应版本号相同1.17.3,放到versions目录下面。
fvm install 1.17.3
如果这里仍然报错,再回到/opt/fvm,创建一个current,根据提示创建对应的空文件
cd /opt/fvm
touch current
touch config.yaml
touch .fvmhome
在执行
fvm install 1.17.3
如果还不行:
cd /opt/fvm
ln -s versions/1.17.3 current
在执行
fvm install 1.17.3
*我开始遇到用fvm install 直接安装flutter库,用上面手动导入的可以避免,报错信息如下
fvm install beta -v
fvm: Command 'git' exited with error: chdir /opt/fvm/versions/beta: no such file or directory*
用同样的方法,将不同的版本flutter拷贝到versions目录下面,修改名字,然后fvm install。 这样fvm的管理就配置好了。
最后效果如下:
4、配置android studio工程配置
打开android studio
Languages & Frameworks
Flutter
Flutter SDK Path修改为/opt/fvm/current
修改完flutter路径。 点击下面的apply-》ok保存。
Dart
Dart SDK Path会自动根据flutter版本的选择去选择flutter下的dart路径:
/opt/fvm/current/bin/cache/dart-sdk
这里会自动选择上:
5、秒切flutter版本
fvm use 1.17.3
fvm use beta
之后就可以使用普通的命令,不需要加fvm前缀,因为fvm原理是实时修改 flutter环境变量 FLUTTER_ROOT 的快捷方式。
flutter pub get
查看当前使用的版本
fvm current
fvm: Current active Flutter SDK is 1.17.3
fvm: And its link path is /opt/fvm/current
fvm: Actually path is /opt/fvm/versions/1.17.3
查看当前管理了哪些版本
fvm list
fvm: 1.17.3
fvm: 1.22.4
fvm: 1.22.5
fvm: 2.0.6
fvm: 2.2.2 (current)
fvm: 2.5.0
fvm: beta