Gradle 差异化构建
Posted 吴添龙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Gradle 差异化构建相关的知识,希望对你有一定的参考价值。
- Compile 默认的依赖方式,任何情况下都会依赖。
- Provided 只提供编译时依赖,打包时不会添加进去。
- Apk 只在打包Apk包时依赖,这个应该是比较少用到的。
- TestCompile 只在测试时依赖
- DebugCompile 只在Debug构建时依赖
- ReleaseCompile 只在Release构建时依赖
1.实现差异化构建
这里我们在src目录下建立debug目录和release目录,并在这两个目录下面建立一个SdkManager类,这里要注意debug和release的包结构需要相同,且不能在main目录下仍有相同的类。
public class TestApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
SdkManager.init(this);
}
}
2. 子module debugCompile 主工程引用
android {
...
publishNonDefault true
}
dependencies {
...
debugCompile \'com.facebook.stetho:stetho:1.4.2\'
}
主工程要添加如下代码,让主工程打debug包时,子工程也打debug. 主工程打release包时,子工程也打release包
dependencies {
...
debugCompile project(path:\':testlibrary\',configuration:\'debug\')
releaseCompile project(path:\':testlibrary\',configuration:\'release\')
}
以上是关于Gradle 差异化构建的主要内容,如果未能解决你的问题,请参考以下文章