美文网首页
Gradle for Android

Gradle for Android

作者: 小相柳 | 来源:发表于2016-06-23 11:35 被阅读11次

    详细看http://wuxiaolong.me/2016/03/30/gradle4android1/

    特此记录之

    apply plugin: ‘com.android.application’,表示该module是一个app module,应用了com.android.application插件,如果是一个android library,那么这里写apply plugin: ‘com.android.library’

    compileSdkVersion:基于哪个SDK编译,这里是API LEVEL

    buildToolsVersion:基于哪个构建工具版本进行构建的。

    defaultConfig:默认配置,如果没有其他的配置覆盖,就会使用这里的。

    applicationId:配置包名的

    versionCode:版本号

    versionName:版本名称

    buildTypes是构建类型,常用的有release和debug两种,可以在这里面启用混淆,启用zipAlign以及配置签名信息等。

    dependencies:不属于Android专有的配置了,它定义了该module需要依赖的jar,aar,jcenter库信息。

    根目录的build.gradle ----定义在这个工程下的所有模块的公共属性

    全局设置:

    如果有很多项目,可以设置全局来统一管理版本号或依赖库,根目录下build.gradle下:

    ext {

    compileSdkVersion =23

    buildToolsVersion ="23.0.2"

    minSdkVersion =14

    targetSdkVersion =23

    }

    app/build.gradle

    android {

    compileSdkVersion rootProject.ext.compileSdkVersion

    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {

    applicationId "com.wuxiaolong.gradle4android"

    minSdkVersion rootProject.ext.minSdkVersion

    targetSdkVersion rootProject.ext.targetSdkVersion

    versionCode 1

    versionName "1.0"

    }

    可以在根目录下建个config.gradle,然后只需在根目录下build.gradle最顶部加上下面一行代码,然后同步下,意思就是所有的子项目或者所有的modules都可以从这个配置文件里读取内容。

    applyfrom:"config.gradle"

    config.gradle

    ext{

    android= [

    compileSdkVersion:23,

    buildToolsVersion:"23.0.2",

    minSdkVersion    :14,

    targetSdkVersion :22,

    ]

    dependencies = [

    appcompatV7': 'com.android.support:appcompat-v7:23.2.1',

    design      : 'com.android.support:design:23.2.1'

    ]

    }

    app/build.gradle

    android {

    compileSdkVersion rootProject.ext.android.compileSdkVersion

    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {

    applicationId"com.wuxiaolong.gradle4android"

    minSdkVersion rootProject.ext.android.minSdkVersion

    targetSdkVersion rootProject.ext.android.targetSdkVersion

    versionCode1

    versionName"1.0"

    }

    ...

    dependencies{

    compilefileTree(dir:'libs',include: ['*.jar'])

    testCompile'junit:junit:4.12'

    compilerootProject.ext.dependencies.appcompatV7

    compilerootProject.ext.dependencies.design

    }

    自定义BuildConfig

    实际开发中服务器可能有正式环境和测试环境,gradle可以通过buildConfigField来配置。

    defaultConfig{

    buildConfigField'String','API_SERVER_URL','"http://wuxiaolong.me/"'

    }

    buildConfigField 一共有3个参数,第一个是数据类型,和Java的类型是对等的;第二个参数是常量名,这里是API_SERVER_URL;第三个参数就是你要配置的值。

    如何在代码取得这个常量值:

    Log.d("wxl","API_SERVER_URL="+ BuildConfig.API_SERVER_URL);

    相关文章

      网友评论

          本文标题:Gradle for Android

          本文链接:https://www.haomeiwen.com/subject/aawndttx.html