android studio gradle定义一个局部变量

时间:2015-08-19 10:22:40

标签: gradle android-gradle build.gradle

我想在我的gradle.build文件中创建一个局部变量,因为我有两个不同的productFlavors,其中有两个不同的jnlibs路径。 然后我使用这个gloabl变量来设置这个不同的路径,例如在section dependies中使用。
我想这样做:

android {
    compileSdkVersion 22
    buildToolsVersion '22.0.1'

    defaultConfig {

    }


    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }

    def pathLibs;

    productFlavors {

        project1 {
            applicationId "com.test.project1"
            minSdkVersion 15
            targetSdkVersion 21
            versionCode=76
            versionName="5.2.6"
            pathLibs 'src/project1/jniLibs'
        }

        project2 {
            applicationId "com.test.project2"
            minSdkVersion 15
            targetSdkVersion 21
            versionCode=66
            versionName="5.2.2"
            pathLibs 'src/project2/jniLibs'
        }
    }

}


dependencies {

    compile 'com.google.android.gms:play-services-cast:6.5+'
    compile 'com.android.support:appcompat-v7:22.1.0'



        compile files(pathLibs+ '/voOSBasePlayer.jar')
        compile files(pathLibs+ '/assets.jar')
        compile files(pathLibs+ '/DxDrmDlc.jar')
        compile files(pathLibs+ '/voOSBasePlayer.jar')
        compile files(pathLibs+ '/voOSDataSource.jar')
        compile files(pathLibs+ '/voOSEngine.jar')
        compile files(pathLibs+ '/voOSHDMICheck.jar')
        compile files(pathLibs+ '/voOSPlayer.jar')
        compile files(pathLibs+ '/voOSStreamingDownloader.jar')
        compile files(pathLibs+ '/voOSUtils.jar')


}

你可以创建变量" pathLibs"如上所述的例子? 感谢

1 个答案:

答案 0 :(得分:2)

要定义全局变量,您可以使用以下内容:

project.ext.set("pathLibs", value)

要从项目的任何位置访问它:

project.pathLibs

使用def pathLibs;它成为局部变量。

您可以找到更多信息here