AS 2.X和3.X版本依赖方式比较
2.X 3.X
在3.X以上版本中,compile依赖关系已经被废弃,被implementation和api替代;
provided被compile only替代;
apk被runtime only替代;
api与2.X版本的compile完全一致。
api与implementation
implementation:仅作用于module内部使用
api:除了内部使用外,还可以提供外部访问
compileOnly
只在编译时有效,不参与打包。一些常用的依赖库可以使用,避免依赖冲突。
runtimeOnly
只在生成apk时参与打包,编译时不参与,一般不用。
testImplementation
只在单元测试代码及打包测试apk时有效。
debugImplementation
只在debug模式的编译和debug apk打包时有效。
releaseImplementation
仅对release模式的编译和release apk打包时有效。