More than one file was found with OS independent path 'lib/armeabi/xxxx.so'解决方法

错误

在组件化方案中容易出现以下问题

More than one file was found with OS independent path 'lib/armeabi/xxxx.so'
原因

这个错误的意思是同样的依赖路径存在两个,说人话就是两次导入了同一个名称的依赖,然后系统就不知道要以哪一个为准。

解决方法
  1. 找到so库存放目录,找出相同的so文件,删掉其中一个,这个方法简单除暴,但是也是最好的。
  2. 在build.gradle(Module: app)里面,加上一句:
	packagingOptions {
        exclude 'lib/armeabi/xxx.so'
    }

exclude后面跟的内容就填写你的错误的path里的内容即可,记得sync。

  1. 如果采用方法2运行后又出现同样的错误,只是path内容有变化,如果一直这样,就应该去仔细检查是不是重复导入什么包了,这往往出现在导入SDK的时候,手动导入一次,然后又用gradle导入一次,这时候删掉gradle里面的语句然后sync一下即可。
    如果exclude后path里面仍然是相同的值,可以尝试一下Build->Clean Project

你可能感兴趣的:(Android)