升级flutter后是否需要更新pubspec.yaml文件中的sdk版本?

Ale*_*ung 7 flutter pubspec

升级flutter后是否需要更新pubspec.yaml文件中的sdk版本?在这种情况下,我需要将 <3.0.0 更改为 <3.1.0 吗?

\n

这是我当前的版本

\n
environment:\n  sdk: ">=2.12.0 <3.0.0"\n
Run Code Online (Sandbox Code Playgroud)\n
\n

Flutter 3.1.0-0.0.pre.1266 \xe2\x80\xa2 通道主控 \xe2\x80\xa2\n https://github.com/flutter/flutter.git框架 \xe2\x80\xa2 修订版 e1d9adf483\n (9 小时前) \xe2\x80\xa2 2022-06-15 21:56:04 -0700 Engine \xe2\x80\xa2 修订版 f8c0dc87bc\nTools \xe2\x80\xa2 Dart 2.18.0 (build 2.18.0- 189.0.dev)\xe2\x80\xa2 开发工具 2.14.0

\n
\n

Mau*_*kom 16

长话短说:

不,这不是必需的,该sdk参数指的是正在使用的 Dart SDK 的版本。

完整解释:

sdk的是 Flutter 正在使用的 Dart SDK 的版本。Flutter 3.1.0-0.0.pre.1266(当前主通道)使用的 Dart 版本是 2.18.0,完全符合指定范围 ( sdk: ">=2.12.0 <3.0.0")。因此,在这种情况下,无需更新 pubspec.yaml 中的版本。

了解 Flutter 应用程序实际上是依赖于包的 Dart 应用程序可能会很有用flutter。因此,您会注意到您的 pubspec.yaml 文件包含一个名为 的依赖项flutter。这可能看起来像:

name: my_app
description: A simple Flutter App.

# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev

environment:
  sdk: ">=2.12.0-0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
Run Code Online (Sandbox Code Playgroud)

这种依赖关系意味着 Dart 将查找开发计算机上当前安装/活动的 Flutter 包,并使用它来构建和运行您的 Flutter 应用程序。

如果您想确保 Flutter 应用程序是使用特定 Flutter 版本(或特定范围)构建的,您可以更新依赖项以指定特定版本:

dependencies:
  flutter: ">=3.0.0 <3.1.0"
Run Code Online (Sandbox Code Playgroud)

在本例中,我们将 Flutter 版本限制为大于或等于 3.0.0 但小于 3.1.0 的任何版本。然而,不建议这样做,因为每个想要构建应用程序的人只有在其计算机上安装并激活了特定版本的 Flutter 时才能这样做。


小智 -1

是的,如果你升级了系统的 flutter 版本,你应该升级 pubspec 中的 sdk 版本,但是如果你不想更新 pubspec yaml 并且想要编码到它的遗留/旧代码中,flutter 有自己的 flutter 版本管理

链接: https: //fvm.app/