延后2

深入学习Gradle(一) Gradle配置⽂件拆解

2021-06-09  本文已影响0人  不思进取的码农

gradle 是什么

怎么构建?

闭包

为什么 Groovy 可以写出类似 JSON 格式的配置?

因为它们其实都是⽅法调⽤,只是⽤闭包来写成了看起来像是 JSON 型的格式

buildTypes 和 productFlavors

总结来说:主要就是配置发布版本和测试版本的一些配置以及混淆文件

productFlavors直译为:产品的偏好.productFlavors是在buildTypes之外的纬度的分配.看起来和buildTypes的作用很像,但是他可以做更多维度
从维度的角度:免费版/付费版 国内版/国外版 渠道包等

flavorDimensions 'paid', 'country'
    productFlavors {
        free {
            dimension "paid"
        }
        paid {
            dimension "paid"
        }
        china {
            applicationId "com.example.china"  //动态配置包名
            dimension "country"
            buildConfigField "String" , "APP_URL" , "http://www.china.com" //给不同版本配置不同域名
           buildConfigField "String" , "APP_NAME" , "小熊维尼" //不同维度不同名称
        }
        usa {
            applicationId "com.example.usa" //动态配置包名
            dimension "country"
           buildConfigField "String" , "APP_URL" , "http://www.usa.com" //给不同版本配置不同域名
            buildConfigField "String" , "APP_NAME" ,  "Winnie the Pooh"'//不同维度不同名称
        }

compile, buildTypesimplementation 和 api

Gradle Wrapper

task

task taskName {
  初始化代码
  doFirst {
  task 代码
  }
  doLast {
  task 代码
  }
}

gradle 执⾏的⽣命周期

三个阶段:

在阶段之间插⼊代码:

afterEvaluate {
  插⼊代码
}
上一篇下一篇

猜你喜欢

热点阅读