网站建设与管理 中职google play三件套
文章目录
- 1. flavorDimensions
- 1.1 单维度
- 1.2 多维度
- 2. BuildConfig
- 3. sourceSets
- 4. 参考资料
1. flavorDimensions
- 与
productFlavors
配合使用 - 使用
flavorDimensions
定义风味维度,维度越多,能打出的渠道包越丰富
1.1 单维度
defaultConfig {...flavorDimensions "channel"
}productFlavors {master {}c318 {}
}
- 单风味维度只能构建
productFlavors
里定义的风味维度,不能组合。 如图只能构建 master 和 c318 两种渠道包
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rHfPLN0G-1676626858486)(https://note.youdao.com/yws/res/49049/WEBRESOURCE16e0a4b4bb25b855724fe1d90255b4b0)]
1.2 多维度
defaultConfig {...flavorDimensions "channel", "company"
}productFlavors {companyA {dimension "company"}companyB {dimension "company"}master {dimension "channel"}c318 {dimension "channel"}
}
- 根据 company 和 channel 进行组合, 上述可以构建 C318CompanyA,C318CompanyB,MasterCompanyA,MasterCompanyB 四种组合的渠道包
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ie6suRLc-1676626858488)(https://note.youdao.com/yws/res/4/WEBRESOURCEc8cd805b7e563813764a9e4eb59c97b4)]
2. BuildConfig
- 结合
BuildConfig
生成属性
buildConfigField "boolean", "LOG_DEBUG", "false"// 动态赋值 url 和端口buildConfigField('String', 'BASE_URL', '"https://www.baidu.com/"')buildConfigField('int', 'URL_PORT', '5672')
- 通过
BuildConfig
判断当前 flavor
public final class BuildConfig {public static final boolean DEBUG = Boolean.parseBoolean("true");public static final String APPLICATION_ID = "com.tinnove.mediacenter";public static final String FLAVOR = "c318";...
}
3. sourceSets
- 在
android{}
标签下的sourceSets{}
标签:可以来设置一些渠道的资源目录,设置后,同名资源会以渠道内的为主
sourceSets {master {java.srcDirs = ['src/master/java']res.srcDirs = ['src/master/res']}c318 {java.srcDirs = ['src/c318/java']res.srcDirs = ['src/c318/res']}}
4. 参考资料
Android | gradle Flavor多渠道打包
Android 多渠道打包