2014-12-19 362 views
4

我使用Android Studio RC和gradle 2.2。我在我的构建变体部分有几个变体,我可以选择我想构建哪一个。例如匈牙利或德国的一个建造。如何获取gradle中当前选择的构建变体?

我有一些任务是在我的gradle脚本中启动的,例如根据flavor/variant更改名称。但是目前,脚本遍历所有构建变体,如下所示: android.applicationVariants.each { variant ->

所以我的问题是:我如何才能从android工作室Build Variants节只得到所选的变体,并在gradle脚本中使用它,所以删除循环?

+0

我不认为你可以。你为什么要删除循环? – 2014-12-19 12:27:55

+0

好吧,它遍历所有构建变体,而我只想使用一个 – 2014-12-19 15:17:14

+1

循环遍历所有构建变体并不意味着您将使用多个构建变体。也许你可以改进你的问题,并详细解释你正试图解决的更大的问题。 – 2014-12-19 17:13:26

回答

2

你可以简单地检查变种名称,只对特定的口味运行某些任务,如:

android.applicationVariants.all { variant -> 
    if (variant.name.contains('myflavor')) { 
     // Do stuff 
    } 
} 
+0

只需将其放入应用程序的build.gradle文件即可。在android {}块之外。它会在每次构建时运行。 – kevinpelgrims 2015-07-15 04:34:51

+7

这不是当前的构建变体,只是手动选择。 – Archinamon 2016-07-23 12:04:26

+0

没有(简单的)方法来获取正在运行的构建的变体。 OP想要根据变体定制构建,最好的方法就是使用这个循环。 – kevinpelgrims 2016-09-16 05:06:09

相关问题