zoukankan      html  css  js  c++  java
  • Android Studio:Grade 全局参数定义

    Grade 全局参数定义

    实际开发中设置公共的编译依赖参数等。

    方法一:

    在项目外层的build.gradle文件中定义,格式如下:

    文件名:build.gradle

    ext {

        sourceCompatibility = JavaVersion.VERSION_1_7

        targetCompatibility = JavaVersion.VERSION_1_7

        compileSdkVersion = 25

        buildToolsVersion = '25.0.3'

        minSdkVersion = 19

        targetSdkVersion = 26

        supportVersion = '25.3.1'

        supportV7CardView = "com.android.support:cardview-v7:${supportVersion}"

        supportV4 = "com.android.support:support-v4:${supportVersion}"

        supportFragment = "com.android.support:support-fragment:${supportVersion}"

        ...

    }

    在各个module的build.grade文件中获取以上定义变量方法为:

    rootProject.ext.supportDesign

    rootProject.ext.supportFragment

    rootProject.ext.supportAnnotations

    rootProject.ext.supportV7AppCompat

    rootProject.ext.supportV7RecyclerView

    rootProject.ext.supportV7CardView

    方法二:

    在gradle.properties中定义整个工程的全局gradle变量

    在gradle.properties中定义如下变量

    ANDROID_BUILD_MIN_SDK_VERSION=15

    ANDROID_BUILD_TARGET_SDK_VERSION=23

    ANDROID_BUILD_SDK_VERSION=23

    ANDROID_BUILD_TOOLS_VERSION=23.0.2

    在所有build.gradle中可以这样使用:

    compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)

    buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION

    方法三:

    可以在根目录下建个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'

        ]

    }

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

    apply from: "config.gradle"

    在app/build.gradle中使用调用如下:

    android {

        compileSdkVersion rootProject.ext.android.compileSdkVersion

        buildToolsVersion rootProject.ext.buildToolsVersion

        defaultConfig {

            applicationId "com.example.android"

            minSdkVersion rootProject.ext.android.minSdkVersion

            targetSdkVersion rootProject.ext.android.targetSdkVersion

            versionCode 1

            versionName "1.0"

        }

    ...

    dependencies {

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

        testCompile 'junit:junit:4.12'

        compile rootProject.ext.dependencies.appcompatV7

        compile rootProject.ext.dependencies.design

    }



    作者:花花是男神
    链接:https://www.jianshu.com/p/43d3e19e3e87
    來源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    CTO干点啥?
    [转] 持续集成与持续交付备忘录
    [转]概率基础和R语言
    程序自信
    [转]Neural Networks, Manifolds, and Topology
    ubuntu14 + nginx + php
    [转]http://makefiletutorial.com/
    REDIS key notification
    GO RPC
    xpcall 安全调用
  • 原文地址:https://www.cnblogs.com/DreamRecorder/p/9198155.html
Copyright © 2011-2022 走看看