利用Gradle的依赖检查
上面一种方式利用了Gradle的被动通知机制,但是这种方式始终需要开发者进行check,只能算是一种被动的通知机制。
实际上,利用Gradle提供的task可以很方便地解决依赖问题,用到的Gradle指令就是gradle androidDependencies,使用效果如下所示。
- ➜ GradleTest git:(master) ✗ gradle androidDependencies
- :app:androidDependencies
- debug
- +--- LOCAL: okhttp-2.4.0.jar
- +--- com.android.support:appcompat-v7:23.1.1
- | \--- com.android.support:support-v4:23.1.1
- | \--- LOCAL: internal_impl-23.1.1.jar
- \--- GradleTest:testlibrary1:unspecified
- \--- com.android.support:appcompat-v7:23.1.1
- \--- com.android.support:support-v4:23.1.1
- \--- LOCAL: internal_impl-23.1.1.jar
通过这个指令,可以很方便地找到每种buildType下的依赖关系图。这样当某个依赖库发生变更的时候,就可以通过这个task检查每个项目下是否包含该依赖库的引用。如果有,则需要提示开发者进行依赖库的更新,而且更关键的是这一切都可以使用Python脚本实现自动化。
