安卓项目sdk从31升级到34

记录一下自己升级安卓项目的经过 

1、android studio 版本2021.2.1.16 ----------升级到Flamingo 2022.2.1.20

2、compileSdkVersion 升级到34   targetSdkVersion 升级到34

3、gradle升级到gradle-8.0-all.zip  项目下build.gradle 中插件更新为com.android.tools.build:gradle:8.0.2,并且将kotlin版本升级为1.6.21

4、原来的com.alibaba:arouter-register 替换成com.github.jadepeakpoet.ARouter:arouter-register:1.0.3 

5、所有module下的build.gradle中增加  如下命名空间,并去掉AndroidManifest.xml 文件中包名

android {

    namespace   'xx.xxxx.xxx'

}

6、升级android studio之后默认gradle.properties中的android.nonTransitiveRClass=true 这里特别注意需要修改成false 不然会导致其它module 无法引用resource module中的资源文件;运行所有R文件引用报错必须加资源所在module的命名空间路径才行

解决以上主要问题之后 再运行解决一些kotlin升级导致语法错误 就基本可以把项目运行

后面还要针对适配安卓14 处理动态广播接收器必须指定导出的行为、对隐式 Intent 和 PendingIntent 的限制、前台服务要指定类型等进行修改。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容