flutter sdk升级之空安全启用

        公司项目flutter sdk需要从2.5升级到3.7。由于项目不支持空安全,所以升级sdk之前要做的第一件事就是启用空安全。以下为空安全适配过程记录。

  • 启用空安全

        将dart sdk设置成sdk: ">=2.12.0 <3.0.0",即可启用。代码如下:

environment:
  sdk: ">=2.12.0 <3.0.0"
  flutter: ">=1.17.0"
  • 三方库升级

        使用命令dart pub outdated --mode=null-safety来检查哪些三方库需要升级,那些库不需要升级。

        使用命令dart pub upgrade --null-safety来进行三方库升级

        使用命令dart pub update --null-safety --dry-run来检查三方库升级失败原因

  • 本项目适配支持空安全
    • 使用名dart migrate来对本项目进行空安全适配
    • 使用命令dart migrate --skip-import-check来进行强制进行空安全适配
    • 本项目空安全适配常遇到的点
      • @required改成required
      • 对于可能为空的入参,需要在类型后添加?,如String? data
      • 对于必须参数需要加上required,如required int viewId
      • 对于返回值为Future<dynamic>,我们可以返回Future<void>、Future<object>、Future<null>等等
      • 对于懒加载的变量我们在类型前面加上late,如late int _viewId
      • 对于可能为null的变量,如Controller? controller,在确定不为空可以controller!.pageGoBack(),可能为null可以controller?.pageGoBack()
  • 16
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值