繁体   English   中英

根据build.gradle中的风味传递参数

[英]Passing parameter depending on the flavor in build.gradle

我需要在构建Android项目之前运行脚本。 但是,我想将一个参数传递给脚本,该参数取决于正在构建的变体(比方说风味的包名称)。 我知道如何为所有变体运行脚本,但实际上我只想针对当前变体运行脚本,因为否则将花费太多时间。

我当前的build.gradle看起来像这样:

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.3'

    productFlavors {
        MyFlavor {
            packageName "com.my.package"
        }
    }
}

task runScript(type: Exec) {
    commandLine 'ruby', 'script.rb', my-package-name
}

preBuild.dependsOn runScript

有人知道怎么做这个吗? 谢谢!

在build.gradle文件中编写如下的自定义参数属性:

packageName = hasProperty('packagename') ? packagename : 'your-default-package name'

修改build.gradle文件中的以下行:

task preBuild (type: Test, dependsOn: runScript)

当您从命令行运行graldew时,请运行以下类似内容:

gradlew preBuild -Ppackagename="your-package-name"

请让我们知道是否有效!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM