因项目使用需要接入友盟的SDK,过程build成功,但无法run。报错如下:
> com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
Program type already present: com.ut.device.AidConstants
根据报错信息寻找错误源头,导致的原因是友盟SDK中的引入和已经引入的alipay的SDK有相同的引用导致的冲突。
解决方案是在build.gradle的引用处去重。
api ('com.umeng.umsdk:push:6.5.1') {
exclude group: 'com.umeng.umsdk', module: 'utdid'
}
如果是离线下载的,删除libs目录中umeng-utdid-xxx.jar组件即可。