当前位置: 首页 > news >正文

flutter升级/版本切换

由于项目1.7(flutter1.17.1版本)版本刚发布,后续应该还有些基于flutter1.17.1版本的bug需要修改,这样就需要频繁切换1.17.1和1.22.6的flutter版本

针对我们实际情况目前切换flutter版本比较好的方式推荐:(无需修改环境变量,也不用重启AndroidStudio)

1、保留项目1.17.1 SDK,并且下载 flutter1.22.6 SDK :https://flutter.cn/docs/development/tools/sdk/releases

2、通过配置符号连接切换flutter版本,如果不太清楚符号连接的可以先阅读一下这篇文章:如何在Mac上创建和使用符号链接(也称为符号链接)

3、flutter doctor v 或者 flutter -- version 看看版本是否正确

mac具体flutter版本切换操作步骤:

1、项目clean然后切换自己需要的分支

2、删除文件夹flutter目录文件(这里的flutter是原来的符号连接)

3、ln -s flutter1.22.6 flutter   (会生成新的符号连接)

4、flutter doctor -v     (看看版本是否对应)

5、pub get  然后运行项目即可

Windows下环境变量配置和flutter SDK切换方式:

  1. 在PATH里添加flutter\bin所在目录绝对路径,例如是D:\sdk\flutter\bin
  2. flutter1.17.1和flutter 1.22.6分别解压后并重命名的路径是D:\sdk\flutter-1.17.1和D:\sdk\flutter-1.22.6,注意:两个目录下一级包含flutter的bin目录,如果解压的时候多了一层目录要去掉一层目录
  3. 以Windows下特有的Junction方式(类似于Linux、MacOS下的符号链接)配置:
    1. 命令行进入D:\sdk
    2. 执行mklink /J flutter flutter-1.17.1  此时D:\sdk\flutter\bin即指向的是D:\sdk\flutter-1.17.1\bin
    3. 切换成flutter 1.22.6时:删除之前建立的Junction链接,再执行mklink /J flutter flutter-1.22.6, 此时D:\sdk\flutter\bin即指向的是D:\sdk\flutter-1.22.6\bin
  4.  如图所示:

//部分同事Windows和Linux遇到的问题:

执行flutter pub get时会导致依赖的第三方library版本号没有按照pubspec.lock中的版本号配置。

解决方法:执行flutter pub get前,先手工修改pubspec.lock中的url,如果环境变量没有配置PUB_HOSTED_URL,url修改为https://pub.dartlang.org,如果配置过环境变量PUB_HOSTED_URL,必须确保pubspec.lock中的url和该环境变量中的值保持一致。

官方推荐升级方式(不推荐):

flutter更新参考文档:升级你的 Flutter 版本 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

flutter升级到指定版本:https://www.jianshu.com/p/c4c5774c4531

flutter upgrade v1.22.6 这个命令还是会直接更新到最新版本了

直接下载新的flutter SDK  下载地址:Flutter SDK 版本列表 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

flutter_boost 3.0直接访问地址:GitHub - alibaba/flutter_boost at v3.0-release.1

flutter_boost 1.17直接访问地址:GitHub - alibaba/flutter_boost at 1.17.1

相关文章:

  • TDesign小程序组件库体验
  • 扩展工具 - 图片验证码生成工具kaptcha
  • 淤地坝安全自动监测预警系统解决方案
  • Revit中的公制植物RPC族制作步骤
  • E. Counting Rectangles(二维前缀和)
  • 流量操作与后门
  • RADIUS 本地服务器还能用吗?
  • springboot+mybatisplus+postgis实现几何点和线串增删改查分页
  • linux内核移植流程
  • canvas 正在慢慢吃掉你的内存...
  • 【无标题】11111
  • go pprof 的使用
  • 类和对象 中
  • LeetCode变位词组
  • locust压测实例
  • 分享的文章《人生如棋》
  • 【编码】-360实习笔试编程题(二)-2016.03.29
  • 345-反转字符串中的元音字母
  • CentOS6 编译安装 redis-3.2.3
  • Docker容器管理
  • Gradle 5.0 正式版发布
  • Laravel Mix运行时关于es2015报错解决方案
  • Markdown 语法简单说明
  • miaov-React 最佳入门
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • python3 使用 asyncio 代替线程
  • python大佬养成计划----difflib模块
  • React组件设计模式(一)
  • Yeoman_Bower_Grunt
  • 闭包--闭包作用之保存(一)
  • 个人博客开发系列:评论功能之GitHub账号OAuth授权
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 前端面试总结(at, md)
  • 区块链技术特点之去中心化特性
  • 如何进阶一名有竞争力的程序员?
  • 软件开发学习的5大技巧,你知道吗?
  • 数组大概知多少
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • 学习使用ExpressJS 4.0中的新Router
  • 移动端解决方案学习记录
  • 异常机制详解
  • 终端用户监控:真实用户监控还是模拟监控?
  • Oracle Portal 11g Diagnostics using Remote Diagnostic Agent (RDA) [ID 1059805.
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • const的用法,特别是用在函数前面与后面的区别
  • shell使用lftp连接ftp和sftp,并可以指定私钥
  • # 透过事物看本质的能力怎么培养?
  • #define,static,const,三种常量的区别
  • #pragma once
  • #大学#套接字
  • #单片机(TB6600驱动42步进电机)
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (2015)JS ES6 必知的十个 特性
  • (C语言)球球大作战