android gradle 依赖项配置变更
在gradle-4.0之前的版本,引入依赖包时,都是按下面的做法
compile 'com.facebook.fresco:animated-gif:0.13.0'
但Android Studio 版本更新至3.0 的gradle-4.0版本中,包依赖配置语句做了修改,变成以下用法:
implementation 'com.facebook.fresco:animated-gif:0.13.0'
或者
api 'com.facebook.fresco:animated-gif:0.13.0'
以下是google官方的说明:
这里主要说一下 implementation 和 api 的区别,两个语句的主要功能同compile一样都能对依赖包的引入,但在使用的作用域上不一样,见下图。
上图的意思是:
模块A使用implementation依赖rxjava库,之后模块B再依赖模块A。这时模块A可以使用 rxjava,但模块B却使有不到。
而如果模块A使用api依赖rxjava库,则模块A和模块B都可以使用rxjava.