《Flutter进阶》flutter升级空安全遇到的一些问题及解决思路

空安全出来挺久了,由于业务需求较紧,一直没时间去升级空安全,最近花了几天去升级,发现其实升级也挺简单的,不要恐惧,没有想象中的多BUG。

flutter版本从1.22.4升到3.0.5;
compileSdkVersion从19升到33(支持安卓12、13);
jdk版本从1.8升到11;
gradle版本从3.5升到7.5;

顺便把AS版本、kotlin版本、以及三四十个依赖插件通通升级到了最近版本。
跨度大范围广,也算是一次综合型的基础升级,遇到的问题比较杂,但总体也算顺利,这里把一些步骤和问题回忆记录一下,希望能帮到大家。

【主要步骤】

  • 备份代码、记录环境和工具的版本信息——目的是万一升级不成功还能回来
  • 检查可升级插件——目的是确保大部分插件都可升级,这样你的代码才能升级上去

运行 dart pub outdated --mode=null-safety


会看到有哪些库已支持空安全,如果现在还不支持空安全的,那么这个库多半是弃用了,寻找新的库吧。

tips:可以去官方插件库
搜索你弃用的那个库名,一般来说后面会有plus、v2 、new 之类的别的库,可能就是原来那个库的空安全版本。例如这个在这里插入图片描述

  • 升级插件——先解决插件问题,再升级代码
    当你确认大部分库都可以升级了,只有个别库被弃用,那么你就可以放心大胆的执行升级第三方库
    运行
    dart pub upgrade --null-safety
    去尝试升级插件。

如果过程中遇到问题,运行
dart pub update --null-safety --dry-run
去检查插件升级失败原因,挨个解决即可。

  • 代码升级——当第三方插件升级完成之后,开始升级自己的代码
    运行 dart migrate 可以直接移植你的代码,帮你自动填充很多的?和!
    如果遇到问题,说明还有库没升级到空安全,没关系,运行 dart migrate --skip-import-check 直接升级,升级完再回来解决即可。

  • JDK版本升级
    这个是因为升级到最新版本后,很多第三方库用了最新jdk编译

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/7655.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

日撸 Java 三百行day11-13

文章目录说明day11-day12 顺序表1.面向过程面向对象区别2.代码2.1 面向过程2.2 面向对象day13 链表1.成员内部类2.链表的插入删除3.代码说明 闵老师的文章链接: 日撸 Java 三百行(总述)_minfanphd的博客-CSDN博客 自己也把手敲的代码放在了…

【51单片机】:LED任务及汇编解释任务

学习目标: 1、用汇编或者c语言实现D1 D3 D5 D7 为一组 ;D2 D4 D6 D8 为一组 ,两组实现 1)一组亮约一秒 另一组灭一秒,这样的互闪现象五次后 25分 2)所有灯灭约一秒后, …

关于ChatGPT的一些随笔

大家好,我是老三,最近几个月关于ChatGPT的信息可以说是铺天盖地。 “王炸,ChatGPT……” “xxx震撼发布……” “真的要失业了,xxx来袭……” “普通如何利用ChatGPT……” …… 不过老三前一阵比较忙,对ChatGPT…

ElasticSearch简介

第一章 ElasticSearch简介 1.1 什么是ElasticSearch Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB…

【数据结构与算法】树与二叉树

目录一.树1.树的定义2.结点的分类与关系3.树的相关概念4.树的表示方法二.二叉树1.二叉树的定义2.特殊二叉树3.二叉树的性质4.二叉树的顺序结构5.二叉树的链式结构(1)链式结构的创建(2)结点的创建(3)二叉树的手动构建(4)前中后序遍历(5)二叉树结点个数(6)二叉树的高度(7)第k层的…

Docker目录迁移

介绍 在docker的使用中随着下载镜像越来越多,构建镜像、运行容器越来越多, 数据目录必然会逐渐增大;当所有docker镜像、容器对磁盘的使用达到上限时,就需要对数据目录进行迁移。 如何避免: 1.在安装前对/var/lib/docker&#x…

如何3步精读《PMBOK指南》(含PMP备考资料)

初学者学习《PMBOK指南》的确有点吃亏,比不得那些项目管理专业以及相关专业的毕业生,哪怕只稍微接触过项目的都比初学者强。 所以,有计划性的阅读就显得尤为重要,要克服的不仅是阅读上的枯燥,还有专业知识的理解&…

Java——JDK动态代理

1.动态代理 1.1什么是动态代理? 动态代理(理解) 基于反射机制 举个例子,生活中一般在打官司的时候都会请代理律师,为什么要请律师呢?是因为开庭的时候大部人对于打官司没有经验,只会说出自己案件的陈述,并不…

软硬皆施,WMS仓库管理系统+PDA,实现效率狂飙

人工经验Excel表格,是传统第三方仓储企业常用的管理模式。在这种管理模式下,对仓库员工的Excel操作能力、业务经验和工作素养要求极高。一旦员工的经验能力不足,就会导致仓库业务运行不顺畅,效率低下,而员工也会因长时…

【MySQL】基于GTID的半同步主从复制(实践)

一、GTID简介 什么是GTID? 全局事务标识符GTID的全称为Global Transaction Identifier,是在整个复制环境中对一个事务的唯一标识。 它是MySQL 5.6加入的一个强大特性,目的在于能够实现主从自动定位和切换,而不像以前需要指定文件和位置。 …

ArduPilot飞控之DIY-F450计划

ArduPilot飞控之DIY-F450计划1. 历史2. 源由3. 计划3.1 硬件3.2 软件4. 动手4.1 接线4.1.1 ELRS nano接收机4.1.2 BN880 GPS模块4.1.3 Radio Telemetry4.2 配置4.2.1 选择四轴机型4.2.2 电源参数调整4.2.3 校准加速度计4.2.4 校准磁力计4.2.5 遥控器校准4.2.6 电机设置4.2.7 电…

企业电子招投标采购系统——功能模块功能描述+数字化采购管理 采购招投标

​ 功能模块: 待办消息,招标公告,中标公告,信息发布 描述: 全过程数字化采购管理,打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力,为外…

Melis4.0[D1s]:4.测试笔记 - 内嵌的显示命令

文章目录1.配置将显示测试源码包含进工程(默认是包含了)2.不要启动melis桌面系统3.开始测试3.1 disp 命令3.1.1 disp不带参数时,打印显示信息:3.1.2 disp -c 0 8 测试4种颜色3.2 disp_layer_cfg 命令3.3 disp_mem 对显示内存写入内…

全球自动驾驶竞争力最新排行榜,4家中国企业上榜

发展至今,自动驾驶技术不仅是汽车行业的一个主战场,更是全球科技领域中备受关注和充满竞争的一个重要领域。近年来,各大汽车制造商和科技公司都在投入大量财力物力人力进行自动驾驶技术的研发,并进一步争夺市场份额。 当然&#…

人工智能前沿——「小海带」超全视觉注意力机制资源分享(附下载链接)

📚📚 人工智能 | 计算机视觉 —— 致力于目标检测领域科研Tricks改进与推荐 | 主要包括主干网络改进、轻量化网络、注意力机制、检测头部改进、空间金字塔池化、损失函数及NMS改进、ICCV/CVPR/ECCV视觉顶会创新点改进、各类数据集资源分享以及算法训练相…

智云通CRM:如何给客户创造尽可能安全的成交环境?

销售人员要想和客户顺利成交,给对方创造尽可能安全的成交环境尤为重要。销售人员的每一句话和每一个观点,应当都是客户所想的。客户是非常聪明的,有任何风吹草动,他们都会提高警惕,这就是客户跟销售人员之间关系的现状…

笔记:关于使用vitepress 制作静态站点并托管到gitee

笔记:关于使用vitepress 制作静态站点并托管到giteegiteejcLee95:https://blog.csdn.net/qq_28550263?spm1001.2101.3001.5343 邮箱 :291148484163.com 本文地址:https://blog.csdn.net/qq_28550263/article/details/129419979…

spring5(五):AOP操作

spring5(五):AOP操作前言一、代理模式1、场景模拟2、代理模式2.1 概念2.2 静态代理2.3 动态代理二、AOP概述1、什么是 AOP?2、相关术语3、作用三、AOP底层原理1、AOP 底层使用动态代理2、AOP(JDK 动态代理)2.1 编写 J…

二分查找(二)

2.练习题 3) 力扣https://leetcode.cn/problems/search-in-rotated-sorted-array-ii/这题需要分三种情况,第一种是区间有序,正常二分查找,第二种是区间 被旋转,左区间的值大于右区间,需要比较目标值和左区…

机器视觉行业公司2023今年最大的特点-老员工真香现象出现,事出反常必有妖

老员工真香现象出现,事出反常必有妖。-老人涨薪,新人不招或降薪,工作2-3年最值得跳槽,培训后好找工作。 你可能看到以上现象很反感,但是现在机器视觉行业环境就是这个样子的。 今年机器视觉行业最大的特点就是项目技术…