一,无法合并DEX造成的原因是因为依赖的包中的SDK重复了,所以只需要找到它删掉其中一个就可以了以集成sophix为例:
(1),因为项目中有使用阿里的支付宝SDK,而阿里支付宝SDK中含有utdidi.jar,而新接进来的sophix包中也有utdidi.jar包,所以删掉Sophix中的utdidi.jar即可。
(2),同时在libs文件中引入这两个相同的arr文件也会导致无法合并dex问题,故去掉其中之一,留下最新的3.2.3文件即可。
二,有时候SO文件重复了系统会提示如下信息:
这是属于这样的包重复导致信息告诉我们“LIB / armeabi-V7A / libsophix.so”文件重复这个时候只需要根据提示在对应项目中的gradle这个中添加:
packagingOptions { 排除'lib / armeabi / libsophix.so' 排除'lib / armeabi-v7a / libsophix.so' 排除'lib / x86_64 / libsophix.so' 排除'lib / x86 / libsophix.so' 排除'lib / arm64-v8a / 'libsophix.so' }
即可解决您的困扰。