作者持续关注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 插件历史版本介绍文章来源:https://www.toymoban.com/news/detail-848210.html
Gradle版本发布文章来源地址https://www.toymoban.com/news/detail-848210.html
到了这里,关于WPS二次开发专题:Gradle版本、AGP插件与Java版本的对应关系的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!