参考文章:
一、进行空安全适配
当开启空安全之后,然后运行下项目你会看到很多的报错,然后定位到报错的文件,大体有三类文件需要修改:
- 自定义Widget
- 数据模型(Model)
- 单例
详细看上面的参考文章。
二、项目空安全升级
升级 Flutter 空安全通常需要以下几个步骤:
更新 Flutter SDK 版本:首先需要更新 Flutter SDK 版本到支持空安全的版本。可以通过运行以下命令来更新 Flutter SDK:
1
flutter upgrade
添加空安全特性:在 Flutter SDK 更新后,需要在项目中添加空安全特性。可以通过运行以下命令来添加空安全特性:
1
2
3dart migrate
// 运行上述命令后,会自动添加空安全相关的代码和特性,例如非空断言、空值检查等。但是,需要根据项目的实际情况进行手动调整和修复。验证代码:在添加空安全特性后,需要对代码进行验证,以确保代码中不存在空指针异常和其他错误。可以通过运行以下命令来验证代码:
Copy
1
2
3dart analyze
// 运行上述命令后,会检查代码中存在的空指针异常和其他错误,并给出相应的提示和建议。需要根据提示和建议进行修复。更新依赖库:在升级 Flutter 空安全时,可能需要更新一些依赖库,以确保依赖库也支持空安全。可以通过运行以下命令来更新依赖库:
1
2
3flutter pub upgrade --null-safety
// 运行上述命令后,会自动更新依赖库,以确保依赖库也支持空安全。发布应用程序:在完成以上步骤后,需要重新构建和发布应用程序。可以通过运行以下命令来构建和发布应用程序:
1
2flutter build apk
flutter install
以上是升级 Flutter 空安全的主要步骤,需要根据项目的实际情况进行调整和修复。在升级过程中,需要注意备份代码和依赖库,并在升级前进行充分的测试,以确保升级后应用程序的正常运行。
1、保证自己非空安全工程/package没有错误(此时版本号低于空安全的2.12.0)。
2、检查是否所在flutter工程依赖库是否都升级到了空安全版本
1 | cd 到pubspec.yaml所在路径 |
3、执行 dart migrate,一键升级空安全。(容易犯的错:要一键升级的package,提前升级了空安全的版本号到2.12.0以上。)

4、移动文件归属,解决依赖关系,使其完全不报红。