gradle命令中api和implement的区别
Android Studio 3.0为了加快构建速度,使用了新的编译指令,原来的很多指令被弃用了。
Android Studio 2.x | Android Studio 3.x |
---|---|
apk | runtimeOnly |
provided | compileOnly |
compile | api |
无对应值 | implementation |
debugCompile | debugImplementation |
releaseCompile | releaseImplementation |
androidTestCompile | androidTestImplementation |
一、 implementation与api的区别
这两者主要区别在于对module的可见性,而且可以加快编译速度
api:
A api B,B api C
A不仅可以引用B module的接口和类,而且还能直接引用C module的接口和类。
implementation:
A implementation B,B implementation C
这时A只可以引用B中的接口和类,不可以引用C中的接口和类。C 对 A 是不可见的!
二、compileOnly 和 api 区别
compileOnly 只提供编译支持,但是不会写入apk;
api不仅提供编译支持,而且会打入apk包体。
根据实际情况合理运用compileOnly和api指令,可以避免v7、v4等包的版本冲突和重复打包导致apk文件体积增大。
gradle命令中api和implement的区别相关推荐
- linux命令中:wq和:wq!区别
[html] view plain copy //上面的命令只是在vi编辑命令中使用 首先使用esc(键退出)->:(符号输入)->wq(保存退出) :wq(保存编辑操作退出) :wq!( ...
- gi命令中reset,revert的区别和使用
Git是一个分布式版本控制软件,最初的目的是更好的管理Linux内核开发设计,由林纳斯·托瓦兹创作. 现在的软件开发生产中,大部分都是基于git来管理的,相比于svn,有更多更好的特性.平时用来管理代 ...
- php chmod 777 chown,linux命令中chown与chmod的区别
chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID:组可以是组名或者组ID:文件是以空格分开的要改变权限的文件列表,支持通配符.系统管理员经常使用chown命令,在将文件拷贝 ...
- JAVA中API和SPI的区别
* API(Application Programming Interface ) 在java中,API是指可以用来完成某项功能的类.接口或者方法. SPI(Service Provider Inte ...
- Linux操作,su切换用户命令中有无横杠“-”的区别
从root切换至oracle用户去登录oracle 切换用户和启动oracle命令如下: # 切换至oracle用户 [root@testdb ~]# su oracle # 登录数据 [oracle ...
- Servlet API中forward()与redirect()的区别?
Servlet API中forward()与redirect()的区别? a.从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这 ...
- linux基础:shell中的sh与bash区别与常用命令
目录 一,什么是sh和bash? 二,shell的基本用法 2.1,变量 2.2,算术运算 2.3,使用 bash 计算器在shell脚本中进行浮点运算 2.4,shell中的条件判断命令test和[ ...
- 【转载】Gradle学习 第十一章:使用Gradle命令行
转载地址:http://ask.android-studio.org/?/article/94 This chapter introduces the basics of the Gradle com ...
- api与implementation的区别
一.从3.4版本的gradle开始,compile已经被api与implementation取代,官网也给出了三者之间的区别: 图1.api与implementation的区别 从官网介绍可以看出,i ...
- abortonerror_如何在多项目目录顶层的Android Gradle Plugin中禁用lint abortOnError
我有一个顶级的 Android Gradle项目.这个项目下面嵌套了多个子项目(有时它们是2级深),即: top level project | project1 vendor libraries | ...
最新文章
- php封装pdo实例以及pdo长连接的优缺点
- Linux 系统编程
- 在清理卫生的时候面对奖状和过去的日记本应该怎么处理
- JVM源码阅读-Dalvik类的加载
- LeetCode 1954. 收集足够苹果的最小花园周长(数学)
- Cloud一分钟 |高通预在年底与苹果和解;比特币绝地反弹;广电拿下5G,或成第四大运营商...
- NLP将迎来黄金十年,7个案例带你入门(附Python代码)
- 考研编程练习----畅通工程
- 吴恩达机器学习logistic回归作业(python实现)
- 迎接蜕变,期待 Internet Exploer 9
- 2. crontab 的使用
- 录制软件obs的使用方法
- 专业商标制作,免费logo在线设计
- 一件虚拟连衣裙价值9500美元?然而这只是数字服装的开始……
- 微信有鸿蒙版的的吗,微信鸿蒙版本下载-微信鸿蒙版本下载最新官方版 v7.0.20-游人手游网...
- 谜底是计算机的谜语英语,英语谜语大全及答案
- SpringSecurity系列——会话管理,CSRFday8-1(源于官网5.7.2版本)
- FPGA数字信号处理(十三)锁相环位同步技术的实现
- 阿里云Mysql5.7 数据库恢复 qp.xb文件恢复数据
- 王杰与宣萱合作lt;老婆大人gt; 获封两个第一(图)