这是我参与8月更文挑战的第14天,活动详情查看:8月更文挑战
今日七夕,祝单身的朋友们快乐!为啥不祝有对象的呢?因为他们今天肯定很快乐!
前言
写了好几篇状态管理了,估计掘友都看累了,中场休息一下。正好评论说在 Dart 2.13.4版本中有问题,决定升级到最新版来跑一下看看。当前Flutter最新稳定版为2.2.3。作为开发尤其是产品开发,升级前肯定都慌得一批,最保险的方式就是可以随时切换回去旧版本——万一崩了还能回退。本篇介绍如何稳妥地在不同的 Flutter 版本切换。
下载最新版 Flutter
请勿直接使用命令行flutter update
升级,一个是慢,一个是回退麻烦。直接上官网的安装指引下载最新版本: Flutter安装指引,注意下载压缩包就可以了。下载完解压,为了和旧版本区分,我的电脑文件夹命名为了 flutter_v22
,完整路径为:/Volumes/ServerDevelop/flutter_v22
。
修改旧的环境变量
本人使用的是 Macbook,命令行工具使用的是 zsh,需要修改环境变量,使用命令:
vim ~/.zshrc
复制代码
将 Flutter 的 bin 目录添加到 $PATH 中:
export PATH=/Volumes/ServerDevelop/flutter_v22/bin:${PATH}
复制代码
然后执行 source 命令让环境变量配置生效。
source ~/.zshrc
复制代码
然后执行一下命令 flutter --version
看看配置生效了没,生效后显示信息如下:
Flutter 2.2.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision f4abaa0735 (6 weeks ago) • 2021-07-01 12:46:11 -0700
Engine • revision 241c87ad80
Tools • Dart 2.13.4
复制代码
说明版本已经生效。
修改VSCode工程配置
我们复制一份之前的 状态管理代码目录 state_management下来,命名为 state_management_v2。然后再用 VSCode 打开,这时候我们打开一个 dart 文件,会发现显示的 Flutter 版本还是2.0.6。
这个时候我们需要修改配置文件settings.json,将dart.flutterSdkPath修改为新的版本的路径:
{
"dart.flutterSdkPath": "/Volumes/ServerDevelop/flutter_v22"
}
复制代码
这个时候再打开 dart 文件就会发现 SDK 版本已经切换为 Flutter 2.2.3版本了。
如果要想切换为旧版本,只需要按上面的步骤将旧版本的目录信息替换上去就好了。现在运行一遍代码,看看升级到最新的版本后会不会报错。结果iOS模拟器连不上,提示:Failed to launch iOS Simulator: Error: Emulator didn't connect within 60 seconds
,运行flutter doctor
检查一下:
[!] Xcode - develop for iOS and macOS
✗ Xcode 11.4.1 out of date (12.0.1 is recommended).
Download the latest version or update via the Mac App Store.
复制代码
呃,需要升级 Xcode 版本,这个就是苹果比较吐槽的地方了,升级新版的 Xcode 需要同时升级系统……这个是一个漫长的过程,先跑一下安卓模拟器看看吧,回头再升级。安卓模拟器运行正常,不过安卓模拟器有点坑,网络访问不支持 localhost
和127.0.0.1
,修改接口地址为本机 IP 即可,有点麻烦,还是升级系统和 Xcode 吧。
不是总结
多版本切换的方式你 Get 到了吗?今天不总结了,就到这吧,我得升级系统和Xcode去了 —— 得为新系统清理好多磁盘空间出来才行!
我是岛上码农,微信公众号同名,这是Flutter 入门与实战的专栏文章。
??:觉得有收获请点个赞鼓励一下!
?:收藏文章,方便回看哦!
?:评论交流,互相进步!