Android3.0X的dependencies依赖变化

279 阅读1分钟

一、依赖变化

3.0X版本相较于之前的2.0版本比较来说compile依赖改为了implementation。 旧版写法:

compile fileTree(dir: 'libs', include: ['*.jar'])

新版写法为:

implementation fileTree(dir: 'libs', include: ['*.jar'])
或
api fileTree(dir: 'libs', include: ['*.jar'])

二、区别

api

\color{#FF3030}{api} 完全等同于 \color{#FF3030}{compile}指令,没啥区别。

impementation

特点就是使用了该命令编译的依赖,依赖该项目的项目将无法访问该项目的任何程序,也就是该依赖会隐藏到内部,不对外公开。

示例

比如我在一个library中使用implementation依赖了gson库,然后我的主项目依赖了library,那么,我的主项目就无法访问gson库中的方法。这样的好处是编译速度会加快,推荐使用implementation的方式去依赖,如果你需要提供给外部访问,那么就只能使用api方式了。

在Google IO相关话题的中提到了一个建议,就是依赖首先应该设置为implementation的,如果没有错,那就用implementation,如果有错,那么使用api指令,这样会使编译速度增快。

\color{#FF0000}{红} \color{#FF7D00}{橙} \color{#FF0000}{黄} \color{#00FF00}{绿} \color{#0000FF}{蓝} \color{#00FFFF}{靛} \color{#FF00FF}{紫}

原文链接:blog.csdn.net/u010358168/…