赞
踩
一、升级
步骤如下:
以Android Studio为例,
1、在Terminal执行命令 flutter upgrade --force
2、执行 flutter pub upgrade,如果Dart Analysis中有错误,执行不了的话,先解决问题,然后执行,此时多是一些方法或包名的更改,如果不知道的话可以百度一下,版本跨度大的话升级的内容比较多,此处需要耗费一些时间,但宗旨不变,就是一些方法或包名的更改
3、修改Android gradle,flutter3.0建议gradle在7.0+
他们的对应关系如下
所以改为如下,⚠️如果有推送,华为推送的插件的版本需要到最新
华为推送插件不升级到最新的话,编译的时候会出现一个问题
In plugin 'com.huawei.agconnect' type 'com.huawei.agconnect.agcp.AGCPluginTa.......
4、升级kotlin版本,尽可能的最新,不是最新也不能太低
5、修改compileSdkVersion为31
6、将<meta-data android:name="flutterEmbedding" android:value="2"/> 移到入口activity下
7、执行flutter clean,然后执行flutter pub get
8、将flutter项目的Android项目打开
9、等待编译,
10、如果有幸编译通过,请执行运行,如果再有幸运行成功,那真的是有幸!你完成了升级!
二、问题处理
非常不幸,你来到了这里。问题比较多,各自的问题也可能不一样,问题不一样的可自行百度
1、
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8
gradle7.0需要java11,这个在setiing里面改一下就行
2、然后就能继续编译了,此处要注意上图的Gradle user home要与你前面配置的一致
3、如果有幸编译通过,那你也升级完成了,没有通过的话看报错信息,报错中一般都有插件的的名字,去Dart packages中查询最新的插件版本,在flutter项目的pubspec.yaml中修改版本。
⚠️ 有些插件虽然没有更新版本,但去github中去看看,就有人提相同的问题
4、手动替换插件版本
5、重复第一步中的7,8,9,10。
6、如果编译还是有问题,看报错原因,一般都是插件问题,当然也可能是Android项目中的
implementation引入的项目版本问题,总之一般都是引入的三方版本问题,继续查找替换,重复执行第二步中的3,4,5
三、问题太多、太难,实在处理不了,回退版本。
我没有回退,所以没有发言权,因为我升级之前就做好了决定——开弓没有回头箭!真实原因是因为我看到有人说回退了环境变量也需要重新配置,索性就硬着头皮升级了。 如果有需要回退的请自行百度一下,这里就不贴链接了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。