首页 > 其他分享 >安卓集成新版推送SDK与旧版本账号SDK发生依赖冲突,如何解决?

安卓集成新版推送SDK与旧版本账号SDK发生依赖冲突,如何解决?

时间:2022-08-31 09:02:14浏览次数:98  
标签:依赖 安卓 hwid huawei 版本 aar 旧版本 SDK

​ 1、问题描述

一开始项目中是集成了华为登录SDK,如下图所示:

cke_300.png

现在想要接入华为推送SDK,如下图所示:

cke_626.png

结果集成之后出现了依赖冲突的问题,报错如下图中所示:

cke_1011.png

 

2、问题分析

implementation (name: 'hwid-2.6.3.306', ext: 'aar')

implementation (name: 'base-2.6.3.306', ext: 'aar')

上面的这个华为登录是很久之前的版本,现在2.x版本已经废弃了,所以跟新版的push sdk是没有办法互通的。如果您需要集成

implementation 'com.huawei.hms:push:6.3.0.304'版本,由于push和hwid都对base有依赖关系,因此老的aar版本是没有办法支持的。

 

3、解决方案

通过上面第二个步骤的分析,不难发现想要解决上面的依赖冲突是不行了,旧版和新版的api也是不匹配的,那我们只有升级hwid的版本了。

①、升级hwid版本

hwid和base这两个依赖包不要使用aar的方式引入,将这两个aar包删除,然后使用开发者联盟官网文档中的Maven仓的方式对新版本进行依赖,官网文档的链接如下:

https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/as-integration-hms-core-sdk-0000001050436235#section1339835185714

添加依赖的方式如下(push会自动引入base的版本,不需要单独添加):

cke_3021.png

通过上面的步骤,在gradle编译完成之后,我们查看安卓项目目录结构中的External Libraries,可以发现已经正常添加了账号和推送的依赖包:

cke_4478.png

②、更新api

在升级完SDK之后,还需要把项目中旧版本的相关功能的实现过程进行替换,参考文档如下所示:

https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/introduction-0000001050048870

可以参考文档中的相关登录接口进行登录:

cke_6155.png

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh

标签:依赖,安卓,hwid,huawei,版本,aar,旧版本,SDK
From: https://www.cnblogs.com/developer-huawei/p/16641723.html

相关文章