美文网首页Android开发Android开发经验谈Android开发
如何解决 Android Studio 三方库依赖冲突问题

如何解决 Android Studio 三方库依赖冲突问题

作者: nanchen2251 | 来源:发表于2017-11-02 13:58 被阅读455次

    今天我们不继续说面试,讲点其他的,有一些废话,关注标题的请直接拉到下面。

    近期呀,笔者除了整理 面试系列,其实还在做一件事,就是在费心费力地准备把 AiYaGirl 进行重构。

    AiYaGirl 是一款涵盖 Retrofit & MVP & RxJava 开发体系的 App ,主要采用代码家的 干货集中营 做数据来源,知识点不多,你选择了我,就是我的幸运

    直接看看之前的效果图吧。


    nanchen.gif

    由于有 MVP 的地方,最好还是加上 Dagger2,所以本次重构主要是加入 Dagger2 、RxJava2 的升级,以及各种性能上的优化。

    但并不是所有人都喜欢 Dagger2,所以我将保留之前的 1.x 版本,本次重构不会覆盖之前的页面,而是在 GitHub 仓库中新建了一个 mvp-dagger 分支。

    期待以后的路上有你的陪伴和交流,因为我也曾遇到各种棘手的问题,到处询问而得不到答案。那个时候的我,也如现在的你,而我,还在这条路上默默前行。

    说说标题上的事儿

    重构的第一件事,就是对库进行了升级。可当我开开心心地把库一个一个更新到最新版,并 build 的时候,发现直接炸了。

    大家更新库,得先看官方用法是否更新,更新需谨慎。

    nanchen nanchen

    support 库出现了 26.1.0 和 26.0.2 两个版本,而我的 App 下是自己只依赖了 26.0.2 的。

    很明显的库兼容性错误,但完全找不着头脑,不知道是哪儿的锅。是呀,这么多库,我哪儿知道是哪个库的毛病。

    nanchen

    一番倒腾后,采用命令行 gradlew -q app:dependencies 找出了问题。

    nanchen

    咦?这个库?

    到这个库的官方地址一看,确实如此。

    nanchen

    于是,直接修正了版本,编译成功,完美。

    应一些读者的要求,目前个人比较常用的 Gradle 命令。

    这肯定是不完整的,因为这只是我平时用的比较多的。其实也还好,命令行习惯了是真的不想手动操作了。

    注意:我是 windows 所以我下面全是针对 windows 操作系统的。如果是 Linux / Mac 请直接用 ./ 前缀。

    • gradlew build
      检查依赖并编译打包,即使你采用了多渠道打包,依然可以,可以生成所有的 apk。(涵盖 release 和 dubug)

    • gradlew clean
      这没啥好说的,就跟 Android Studio 下面的 clean 差不多。

    • gradlew installDebug
      编译并打包 debug 包。

    • gradlew -v
      查看构建的版本。

    • gradlew build --info
      编译并打印日志。

    • gradlew dependencies --info
      查看详细的依赖信息

    • gradlew assembleRelease
      命令行打包不签名的release包
      生活中总是会遇到各种各样奇怪的问题,但路,我们还得继续走下去。

    做不完的开源,写不完的矫情。欢迎扫描下方二维码或者公众号搜索「nanchen」关注我的微信公众号,目前多运营 Android ,尽自己所能为你提升。如果你喜欢,为我点赞分享吧~


    nanchen

    相关文章

      网友评论

      本文标题:如何解决 Android Studio 三方库依赖冲突问题

      本文链接:https://www.haomeiwen.com/subject/jkvopxtx.html