WPS二次开发专题:Gradle版本、AGP插件与Java版本的对应关系

 作者持续关注WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(QQ:250325397)

背景

最近有体验SDK的同学反馈接入SDK出现报错,最终定位到原因为接入的宿主app项目的gradle版本过低导致,SDK兼容支持了android11的特性,需要对应的gradle插件为支持android11的版本。

现象

解决方案

将gradle版本升级至支持android11的插件版本即可,对此google官方的引文如下

4.0.1(2020 年 7 月)

本次要更新支持与 Android 11 中软件包可见性的新默认设置和功能兼容。

在以前的 Android 版本中,可以查看设备上安装的所有应用的列表。从 Android 11(API 级别 30)开始,默认情况下,应用只能访问经过过滤的已安装软件包列表。如需查看系统上更广泛的应用列表,您现在需要在应用或库的 Android 清单中添加 <queries> 元素。

Android Gradle 插件 4.1 及更高版本已与新的 <queries> 声明兼容;不过,较低的版本不兼容。如果您添加 <queries> 元素或者开始依赖于支持以 Android 11 为目标平台的库或 SDK,在构建应用时可能会遇到清单合并错误。

为了解决此问题,我们将针对 AGP 3.3 及更高版本发布一组补丁程序。如果您使用的是旧版 AGP,请升级到以下某个版本:

如果您使用的是以下AGP 版本

请升级到

4.0.*

4.0.1

3.6.*

3.6.4

3.5.*

3.5.4

3.4.*

3.4.3

3.3.*

3.3.3

关于WPS 二次开发SDK可以查看前面的系列文章介绍哦!

申请方式如下:

通过向WPS官方发送邮件申请,审批通过后即可获取集成相关资料,详细参见

邮件模板:
发起人:有需要申请接入WPS移动端的企业或者个人
邮件主题: XXX公司XXX项目---WPS Android端 SDK二次开发集成申请
邮件发送: m_open_sdk@wps.cn
邮件内容:
请明确包含申请项目背景规模、集成应用第三方APP包名, 具体需求 、集成周期等

更多需求可以通过 WPS 二次开发群(QQ:250325397)进行咨询

更多知识扩展

gradle是什么

  • Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。它使用一种基Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置
  • 配置文件位置:项目根目录->gradle 文件夹->wrapper->gradle-wrapper.properties
#Mon May 08 14:27:02 CST 2023
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

AGP(AndroidStudio Gradle Plugin)插件是什么

  • AndroidStudio用于开发Android项目的gradle插件,它一边调用 Gradle本身的代码和批处理工具来构建项目,一边调用Android SDK的编译、打包功能。由于需要调用andriod,sdk的编译打包功能,所以该插件需要关连 Android SDK Build Tools Version
  • 为何需要?由于gralde不指是为android提供构建的也为其它c++等提供构建。所以需要针对安卓的插件。
  • Gradle插件会有版本号,一般和androidStudio的版本一致。每个版本号又对应有一个或一些 Gradle发行版本
  • 配置位置:File->Project Structrue

Android SDK Build Tools Version是什么

  • Build Tools Version为AGP提供的版本构建工具,一般由AS自动生成
  • 位置:module-> build.gradle
android {
    buildToolsVersion "29.0.2"
    ...
}

Gradle及插件版本支持映射

插件版本

所需的最低 Gradle 版本

支持的java版本

8.4(Alpha 版)

8.6-rc-1

8.3

8.4

<= 21

8.2

8.2

<= 20

8.1

8.0

8.0

8.0

7.4

7.5

<= 18

7.3

7.4

7.2

7.3.3

<= 17

7.1

7.2

7.0

7.0

<= 16

4.2.0+

6.7.1

<= 15

4.1.0+

6.5+

<= 14

4.0.0+

6.1.1+

<= 13

3.6.0 - 3.6.4

5.6.4+

3.5.0 - 3.5.4

5.4.1+

<= 12

3.4.0 - 3.4.3

5.1.1+

<= 11

3.3.0 - 3.3.3

4.10.1+

3.2.0 - 3.2.1

4.6+

<= 10

3.1.0+

4.4+

3.0.0+

4.1+

<= 9

2.3.0+

3.3+

2.1.3 - 2.2.3

2.14.1 - 3.5

2.0.0 - 2.1.2

2.10 - 2.13

<= 8

1.5.0

2.2.1 - 2.13

1.2.0 - 1.3.1

2.2.1 - 2.9

1.0.0 - 1.1.3

2.2.1 - 2.3

参考地址:

Android Gradle插件

Android Gradle 插件历史版本介绍

Gradle版本发布

  • 23
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: com.android.tools.build:gradle版本对应关系是指在Android开发中,Gradle构建工具和Android插件版本之间的对应关系Android插件是一个Gradle插件,用于构建和打包Android应用程序。 一般来说,Gradle构建工具和Android插件版本需要保持兼容性,以确保项目能够正常构建和运行。因此,当我们在项目中引入新的Gradle构建工具版本时,我们也需要相应地更新Android插件版本。 具体的对应关系如下: - Gradle 2.0 - 2.1 对应 Android插件1.0.x - Gradle 2.2 - 2.3 对应 Android插件1.1.x - Gradle 2.4 - 2.5 对应 Android插件1.2.x - Gradle 2.6 - 2.8 对应 Android插件1.3.x - Gradle 2.10 - 2.14.1 对应 Android插件1.5.x - Gradle 2.14.1+ 对应 Android插件2.0.x 或更高版本 需要注意的是,Gradle的新版本通常会引入一些新的功能和改进,因此,为了能够享受到这些新特性,我们可以根据自己的需求选择最新的GradleAndroid插件版本。 除了Gradle版本Android插件版本对应关系,我们在构建Android项目时还需要关注其他依赖库的版本和兼容性,以确保项目的稳定性和适配性。 ### 回答2: com.android.tools.build:gradle是用于构建Android项目的工具,它的版本号与Gradle版本号之间有一定的对应关系。 在之前的版本中,com.android.tools.build:gradle版本号与Gradle版本号之间存在一对一的对应关系,也就是说每个Gradle版本对应一个com.android.tools.build:gradle版本号。 从Gradle 4.0版本开始,Gradle与com.android.tools.build:gradle版本号之间的对应关系发生了变化。在Gradle 4.0及之后的版本中,Gradle版本号被分为了两部分,其中一部分表示Gradle本身的版本,另一部分表示com.android.tools.build:gradle版本。 具体来说,Gradle版本号的格式为x.y.z,其中x表示Gradle的大版本号,y表示Gradle的次要版本号,z表示Gradle的修订版本号。而com.android.tools.build:gradle版本号的格式为x.y.z.a,其中x、y、z与对应Gradle版本号一致,而a表示com.android.tools.build:gradle的修订版本号。 例如,对于Gradle 6.7版本,它的com.android.tools.build:gradle可能是4.2.0或者更高的修订版本号。 需要注意的是,为了确保项目的稳定性和兼容性,建议在构建Android项目时使用与Gradle版本对应的com.android.tools.build:gradle版本号。可以通过查看相关文档或项目配置文件来确定合适的版本号。 ### 回答3: "com.android.tools.build:gradle"是一个用于Android应用项目构建的Gradle插件。它与Gradle版本有特定的对应关系。以下是一些常见的"com.android.tools.build:gradle"版本及其对应Gradle版本: 1. "com.android.tools.build:gradle:1.0.0"对应Gradle版本是2.2.1。这是最早的"com.android.tools.build:gradle"版本,适用于早期的Android应用项目。 2. "com.android.tools.build:gradle:2.3.3"对应Gradle版本是3.3.3。这是一个相对较新的"com.android.tools.build:gradle"版本,适用于较新的Android应用项目。 值得注意的是,"com.android.tools.build:gradle"和Gradle版本之间并不是一对一的关系。相同版本插件可以使用不同版本Gradle进行构建,并且插件版本Gradle版本之间也有兼容性要求。在选择使用"com.android.tools.build:gradle"版本时,应该参考官方文档或相关文档,以确保选择的版本与项目的需求和其他依赖项兼容。 总的来说,选择和配置适当的"com.android.tools.build:gradle"版本对于成功构建Android应用项目至关重要。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值