AndroidStudio升级Gradle到7+,compileSdkVersion 33+

一、概述

  由于需求方的要求/需要,主动或被动的需要升级android的编译环境到CompileSdkVersion 33。此时直接更改android项目的编译版本会报错,as版本过低或者gradle插件太老了等。

    也会遇到一些这样那样的bug,这一篇做一下简单的总结

  

  升级方式:

      以更改gradle配置为主:

      1.修改根目录下的build.gradle并升级gradle插件

    dependencies {
        classpath 'com.android.tools.build:gradle:7.2.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10"

    }

      2.更改gradle的版本为7.5

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip

      3.更改android的编译版本为33,目标版本也为33

compileSdkVersion 33

targetSdkVersion 33

      4.进行同步操作

 

 二、可能用到的问题 

Could not resolve all dependencies for configuration ':classpath'.
   > Using insecure protocols with repositories, without explicit opt-in, is unsupported. Switch Maven repository 'maven2(http://maven.aliyun.com/nexus/content/groups/public/)' to redirect to a secure protocol (like HTTPS) or allow insecure protocols. See https://docs.gradle.org/7.5/dsl/org.gradle.api.artifacts.repositories.UrlArtifactRepository.html#org.gradle.api.artifacts.repositories.UrlArtifactRepository:allowInsecureProtocol for more details. 

  解决办法:把根目录下build.gradle中的maven中的http改为https

 

  2.其他的一些bug,按照as提示一步步解决就行。这里提一下嘴,遇到问题多点

  

  3.包冲突

Duplicate class com.alibaba.fastjson.JSON

  4.includeCompileClasspath报错

Caused by: groovy.lang.MissingPropertyException:
 Could not set unknown property 'includeCompileClasspath' for AnnotationProcessorOptions_Decorated{classNames=[], arguments={AROUTER_MODULE_NAME=app}, compilerArgumentProviders=[]} of type com.android.build

  暂时注释掉:includeCompileClasspath = true

  5.

  4.总结

    相对来说升级还算顺利,并没有遇到特别恶心的问题。

  

posted on 2024-05-31 10:38  飘杨......  阅读(1713)  评论(0)    收藏  举报