flutter 版本管理
flutter sdk 版本的选择:
1、Stable:稳定版。近一年中最好的beta版本。官方建议跟踪flutter的stable分支
2、Beta:测试版。每隔几周都会选取近几个月中最好的dev版本作为Beta版。
3、dev:最新的经过完全测试的版本。包含新功能,但可能有一些问题。
4、master:最新版,但未经测试。
查看flutter sdk版本号运行:flutter --version
查看所有flutter sdk版本号运行:flutter version
要查看您当前使用的分支,请运行flutter channel查看。
要切换分支,请使用flutter channel beta 或 flutter channel master 或 flutter channel stable
flutter upgrade //指令代码 只升级flutter sdk包(请谨慎升级,升级后可能导致依赖包和当前sdk版本依赖关系而大量报错,多人开发建议写死版本号)
flutter upgrade v1.9.1+hotfix.3 // 升级到指定的 v1.9.1+hotfix.3 版本
flutter packages get // 获取pubspec.yaml中所有的依赖包
flutter packages upgrade //获取pubspec.yaml中所有列表中的依赖包的最新版(所有包升级至最新版)
在项目里面意外的使用了flutter upgrade导致报错,需要回退flutter SDK 版本
通过地址(https://github.com/flutter/flutter)找到要更新的版本号 或 找到要回退的版本 的git节点标识,
进入到flutter根目录(安装目录)打开终端窗口,然后终端执行 git reset --hard 840c9205b344a59e48a5926ee2d791cc5640924就可以了(在切换flutter sdk时,会同步切换下载对应的dart sdk,需要1G以上流量下载,网络不要断开)
项目中包管理文件pubspec.yaml
name: topnews # 应用名称
description: A new Flutter application. # 应用描述
version: 1.0.0+1 / #app版本号,其中+前面为版本号,后面为构建号。
#Dart 运行环境区间
environment:
sdk: ">=2.1.0 <3.0.0" # Dart sdk版本号,多人开发中建议写死
#Flutter 依赖的三方库
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^0.1.2
flutter_swiper: ^1.1.6
flutter_redux: ^0.6.0
redux: ^4.0.0+3
fluro: ^1.6.3
dio: ^3.0.9
shared_preferences: ^0.5.7+3
timeago: ^2.0.26
image_picker: ^0.6.7+4
flutter_advanced_networkimage: ^0.7.0
多人开发中,建议将dart运行环境限定住
environment:
sdk: "2.9.0" # Dart sdk版本号(命令 dart --version查询)
flutter: "1.20.0" # flutter sdk版本号(命令 flutter--version查询)
git 节点的flutter sdk 版本号如果为1.21.0-9.2.pre这种类型的,在environment中也要对应写入,本人使用的版本号正好的1.20.0稳定版
安装完成后查询
注意:建议在项目创建后,及时记录dart sdk及flutter sdk版本号,方便后面不小心flutter upgrade 时进行回滚
之前不小心升级到最新版,报错,不记得版本号.一顿回滚操作,版本号都对不上
Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.17.4/lib/src/picture_stream.dart:88:26: Error: Type 'DiagnosticableMixin' not found.
class PictureStream with DiagnosticableMixin {
^^^^^^^^^^^^^^^^^^^
Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.17.4/lib/src/picture_stream.dart:192:44: Error: Type 'DiagnosticableMixin' not found.
abstract class PictureStreamCompleter with DiagnosticableMixin {
^^^^^^^^^^^^^^^^^^^
Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.17.4/lib/src/picture_stream.dart:88:7: Error: The type 'DiagnosticableMixin' can't be mixed in.
class PictureStream with DiagnosticableMixin {
^
Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.17.4/lib/src/picture_stream.dart:192:16: Error: The type 'DiagnosticableMixin' can't be mixed in.
abstract class PictureStreamCompleter with DiagnosticableMixin {
^
Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.17.4/lib/src/picture_stream.dart:167:11: Error: Superclass has no method named 'debugFillProperties'.
super.debugFillProperties(properties);
^^^^^^^^^^^^^^^^^^^
Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.17.4/lib/src/picture_stream.dart:171:30: Error: The method 'toStringShort' isn't defined for the class 'PictureStreamCompleter'.