解决XUI 1.1.7版本报错问题:gradle因umeng仓库配置失效,导致编译出错

报错问题

XUI版本:1.1.7

XUI项目地址下载XUI项目包,在Android Studio构建并运行后,Build一栏报错:

Could not GET 'https://dl.bintray.com/umsdk/release/com/umeng/umsdk/analytics/8.0.2/analytics-8.0.2.pom'. Received status code 403 from server: Forbidden
Disable Gradle 'offline mode' and sync project

问题原因

XUI.app的build.gradle文件中,umeng引入仓库地址(https://dl.bintray.com/umsdk/release/com/umeng/umsdk/analytics/8.0.2/analytics-8.0.2.pom)在gradle编译时连接失败,报错403拒绝访问,导致gradle无法下载umeng仓库。

解决办法

umeng仓库替换地址:https://mvnrepository.com/artifact/com.umeng.umsdk

在XUI\app\build.gradle文件中对umeng配置的部分,将

//umeng统计
implementation 'com.umeng.umsdk:analytics:8.1.4'
implementation 'com.umeng.umsdk:common:2.1.8'

改为

//umeng统计
implementation group: 'com.umeng.umsdk', name: 'common', version: '9.3.8'

对应下图红框区域:
更改引入umeng仓库的地址
当界面出现Sync Now的提示后,点击同步仓库代码,然后在Android Studio的Build->Rebuild Project重新构建代码(或者不放心先Build->Clean Project清理之前的编译文件),再点击run运行即可:
更改umeng配置后构建成功

注意

1. duplicate class报错

common包与analytics包不能一并引入
不要将上图com.umeng.umsdk群组下的analytics包和common包(红圈标注)一块引入:

//umeng统计
runtimeOnly group: 'com.umeng.umsdk', name: 'analytics', version: '1.0.0'
implementation group: 'com.umeng.umsdk', name: 'common', version: '9.3.8'

否则gradle编译的时候,Android Studio的Build一栏会出现duplicate class报错(报错数量太多,这里只展示一部分):

Duplicate class com.umeng.analytics.AnalyticsConfig found in modules jetified-analytics-1.0 (com.umeng.umsdk:analytics:1.0.0) and jetified-common-9.3.8 (com.umeng.umsdk:common:9.3.8)
Duplicate class com.umeng.analytics.CoreProtocol found in modules jetified-analytics-1.0 (com.umeng.umsdk:analytics:1.0.0) and jetified-common-9.3.8 (com.umeng.umsdk:common:9.3.8)
Duplicate class com.umeng.analytics.CoreProtocol$1 found in modules jetified-analytics-1.0 (com.umeng.umsdk:analytics:1.0.0) and jetified-common-9.3.8 (com.umeng.umsdk:common:9.3.8)
Duplicate class com.umeng.analytics.CoreProtocol$a found in modules jetified-analytics-1.0 (com.umeng.umsdk:analytics:1.0.0) and jetified-common-9.3.8 (com.umeng.umsdk:common:9.3.8)

这是因为common包含有analytics包常用的类,会产生引用冲突,所以只需引入common包即可。

如果感兴趣,想了解怎么解决gradle编译时出现的duplicate class报错,可以参考:

2. XUI构建时,输出日志中文乱码

Android Studio编译时,Build一栏输出日志中文乱码:
Android Studio编译中文乱码
参考Android Studio升级3.6 Build窗口出现中文乱码问题解决方法,在Help->Edit Custom VM Options加入一句:

-Dfile.encoding=UTF-8

如下图:
Android Studio解决中文乱码的配置
再次构建项目,运行结果如下:
Android Studio编译中文正确
可以看到中文乱码问题得到解决。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值