implementation:使用了该命令编译的依赖,仅仅对当前的Moudle
提供接口
依赖首先应该设置为implement
的,如果没有错,那就用implement
,如果有错,那么使用api
指令
那为什么要这么做呢?
答案是: 1. 加快编译速度。2. 对外隐藏不必要的接口。
api,使用该方式依赖的库将会参与编译和打包。
compileOnly,只在编译时有效,不会参与打包
可以在自己的moudle
中使用该方式依赖一些比如com.android.support
,gson
这些使用者常用的库,避免冲突