如何在 beta 通道上使用 Flutter 将 Dart 设置为稳定通道(以避免空安全选择加入)

Posted

技术标签:

【中文标题】如何在 beta 通道上使用 Flutter 将 Dart 设置为稳定通道(以避免空安全选择加入)【英文标题】:How to set Dart to stable channel with Flutter on beta channel (to avoid null safety opt in) 【发布时间】:2021-04-26 02:52:43 【问题描述】:

我需要将 Flutter 设置为 Beta 频道(撰写本文时为 Flutter 1.25.0-8.3.pre),但不需要“选择加入” null 安全功能,这就是我手动将 Dart 版本设置为 Stable 频道的原因。

当我使用 Intellij IDE 时,我尝试在 Settings 中定义 Dart SDK 路径,但一旦我将其更改为稳定版本的路径(我在独立版本中单独设置位置)flutter run 不再通过 IDE 运行。只需在终端中运行 flutter run 即可。

只是为了更清楚地说明此事。似乎一旦我在设置中更改Dart SDK pathFlutter SDK path 就会被取消设置,反之亦然。

旁注:我需要 Flutter 测试版,因为它支持网络

【问题讨论】:

【参考方案1】:

您可以在Official Documentation 中阅读有关 Flutter 通道的更多信息。

【讨论】:

【参考方案2】:

切换到测试版

flutter channel beta

更新到最新版本

flutter upgrade

dart-sdk自带flutter,位置是:

flutter/bin/cache/dart-sdk

为 intellij-idea 中的 dart-sdk 路径设置此项

然后在 pubspec.yaml 中你可以为当前项目定义你想要的 dart 版本

我将此版本用于非空安全项目:

environment:
  sdk: ">=2.9.0 <3.0.0"

此版本适用于空安全项目:

environment:
  sdk: '>=2.12.0-29.10.beta <3.0.0'

注意:我在 dev 1.26 上,我的最新项目正在运行 null 安全功能,但旧项目处于非 null 安全状态,因为它们已经在生产中,我不想迁移它们。一切正常

【讨论】:

以上是关于如何在 beta 通道上使用 Flutter 将 Dart 设置为稳定通道(以避免空安全选择加入)的主要内容,如果未能解决你的问题,请参考以下文章

欢迎体验 Beta 版 Flutter web 支持

如何模拟/存根 Flutter 平台通道/插件?

如何通过 FlutterView 或 Flutter.createFragment 使用平台通道

Flutter ios Build 无法在 MacOS Big Sur 11.0 Beta 上运行

如何使用FlutterView或Flutter.createFragment的平台通道

如何在发布之前对 Android 应用进行 alpha / beta 测试?