Android:依赖Module的问题汇总

android studio 下载 | 2018-07-17 09:15

实际项目中我们经常会需要依赖一些module,依赖的时候总会出现各种稀奇古怪的问题,今天就总结一二。

问题现象:

解决方案:

将所需要的module通过 File--new--import Module 导入(或者直将module直接粘贴到项目根目录下)

打开当前项目的 settings.gradle ,将新导入的module追加到末尾,比如: include':opencv',":tess-two",':cwac-richedit',':picture_library',':ucrop' 追加时,命名格式为:‘:module名称’

我的问题所在:

将 PictureSelector作为module导入到项目时,实际导入了两个module 一个是 picture_library (图片/视频选择的核心),一个时 ucrop (图片裁剪)。

picturelibrary 的清单文件不为空,并且在 application 节点中定义了 theme, 而我自己项目的清单文件中,也在 application节点中定义了项目,所以,二者冲突了,将pictruelibrary 中的 theme 删除后,问题解决。

这个问题之前单独总结过,复制下面链接到浏览器查看即可。

具体原因:

自己项目和导入的module在各自的清单文件的dependencies 节点内依赖了相同的组件,但是两者版本不一致!!(通常是自己项目的版本低,才会出现这个问题,)

在我们的项目中,引用了下面两个support库,但是这两个版本一开始是低于 新导入的 picture_library 中的版本,所以,修改成一致的之后,正常编译了

网络资料中一般都是说,编译版本和目标版本的差异可能会出现这个问题。但是,根据我的解决过程发现,依赖包的版本低于导入module中的版本也不行(还是导入 PictrueSelector 的 picture_library时,我们自己的项目和这个module中都依赖了 glide ,但是,我们项目中的版本高于导入module的,所以,没有报错)