一 buildscript
buildscript:这里面的声明(repositories,dependencies)是
gradle脚本自身需要使用的资源,会优先加载,
而外面的声明(repositories,dependencies)是项目需要使用的资源
repositories :托管第三方插件的平台
dependencies :具体路径
二 buildType,productFlavors的联系
buildType,productFlavors :都能生成不同的apk。
buildType :
构建类型,debug(本地调试) ,release(服务区编译或打包给系统集成的版本)
productFlavors :
多渠道,多项目区分 ,可以指定java,资源文件路径,及动态区分不同flavor的代码编写。
可以通过sourceSets 指定对应的代码目录,
也可以通过属性值BuildConfig.FLAVOR(也可以自定义属性值)来区分进而差异化代码编写
还可以flavorDimensions进一步细分不同的版本
三 集中管理
defaultConfig :项目的默认配置
一般会把 defaultConfig ,dependencies中公用的部分单独抽出来给各个模块调用。
比如:
1 抽android版本信息相关
直接抽取到ext里,抽到根build.gradle