我正在将我的一个应用程序转换为Gradle,并希望使用新的构建风格功能来获得付费和免费的广告风格 .
我只希望基于广告的版本依赖于admob SDK .
我的构建文件如下所示:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
productFlavors {
Pro {
packageName "de.janusz.journeyman.zinsrechner.pro"
}
Free {
dependencies {
}
}
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.+'
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
compile fileTree(dir: 'libs', include: '*.jar')
}
有没有办法在免费产品风格中配置依赖项,使其拥有自己的libs文件夹,该文件夹与包含两种风格的通用库的主libs文件夹合并?
如果可能,我该如何定义这个文件夹?
4 回答
要定义特定于flavor的依赖项,可以在依赖项部分中使用
proCompile
而不是compile
. 运行gradle属性时,您将获得自动创建配置的概述 .正确的构建文件如下所示:
您需要为每种风格手动添加配置 . 例
Edit: 我建议使用其他技巧之一!
接受答案的替代方案是:
快进到2018年中期 . 您需要添加
flavorDimensions
.另外,请注意: