低版本AndroidStudio项目升级到高版本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了低版本AndroidStudio项目升级到高版本相关的知识,希望对你有一定的参考价值。

参考技术A 近一个月来,不管是公司电脑还是个人电脑都换了,然后重新安装了新的as及相关插件,于是,打开旧项目就有很多问题了,最初是原项目gradle版本过低,新装的5.4.1,项目中用到的是3.5.3,编译时老提示最低编译版本为26,然后又是butterknife版本用了10.2.1,然后提示对应build sdk要用28,于是,又有一大堆问题需要去解决。

这里记录下 Android 低版本升级到高版本后 的几个问题及解决方案:

因为太久没搞android,所以这一问题花了些时间去处理,后来出现了androidx替代v4/v7包,于是找到了对应的解决方案:gradle.properties中增加下面两句(其实28新建项目会带有这两句,只是我这是老项目,所以没有,需要手动添加)

然后gradle sync,之前用到v4/v7的地方会报错,这里我也暂时没啥好方法,只有一个个改,能想到的简单点的操作有两点:1.使用ctrl+R替换,2.用alt+enter自动添加import;这里需要注意的是不仅仅是类中需要改,布局文件中,AndroidManifest.xml中也可能要改。

ps: 后来发现这里有比较轻松的解决方法,在gradle和build sdk切换为高版本后使用Migrate to Androidx自动替换v4/v7位androidx, https://www.jianshu.com/p/f7a7a8765294

用@BindView(R .id .xxx)替换,全局替换下即可

这里需要在build.gradle的android节点下增加

以及,Refactor菜单,点击 Migrate to Androidx ...

这里去掉gradle.properties中的android.useDeprecatedNdk=true,换成在build.gradle中使用cmake即可

在gradle中应用butterknife,应该以下两句都有

使用 .transition(withCrossFade()) 替代 .crossFade()

其实还有很多其他问题,只是这几个问题是刚解决的,还留有一些记忆,就先记录下来,后续再汇总其他问题

2020.05.24 12:03:52

以上是关于低版本AndroidStudio项目升级到高版本的主要内容,如果未能解决你的问题,请参考以下文章

vivado低版本的bd设计能否升级到高版本?

shiro低版本的漏洞通过升级shiro版本解决

系统升级测试模型

Rman_异地跨平台跨版本的恢复总结及案例

问题排查低版本内核驱动移植到高版本内核中编译报错,部分编译异常记录及解决

问题排查低版本内核驱动移植到高版本内核中编译报错,部分编译异常记录及解决