android studio配置:compile、implementation、api的使用

当使用gradle 3.x时候,大家会发现,以前引入jar包或依赖modle时所使用的compile,当build时会报出警告,让使用implementation或api。
我和大多数人一样,有强迫症,既然给了提示,就改呗。但是用implementation还是用api呢?试了下,两个都可以用啊,也没报错。

但是查了下,还是有区别的。

implementation:

表明Molde内部使用的jar,相当于class 中的 private。
官方表示:可以增加编译速度(你说能,就能吧,我也懒得测试了)。
个人觉得,可用于解决包冲突问题。

  1. Modle A 引入了Glide的jar包,使用的implementation;
  2. Modle B 依赖了Modle A,Modle B 不能访问 Glide 的jar包‘;

api:

与compile相同,只要是同一个项目,modle之间亦可以相互访问。

  1. Modle A 引入了Glide的jar包,使用的api;
  2. Modle B 依赖了Modle A,Modle B 可以访问 Glide 的jar包‘;

注意:
当引用jar时,默认的是implementation,在多modle依赖时,注意修改。

你可能感兴趣的:(Android,studio)