android - 如何以编程方式获取所有 android 应用程序 flavor 名称

标签 android android-studio gradle android-gradle-plugin build.gradle

我想获取 Activity 中的所有应用程序 flavor 列表,我该如何获取?这就是我通过 Gradle 在我的应用程序中实现 flavor 的方式。

我只能通过 BuildConfig.java 获得当前 flavor 类(class)。

public static final String FLAVOR = "myExamIdea";

但我想得到所有的味道 list 。下面是我的 gradle 文件 fragment 。
 flavorDimensions "igen"
 productFlavors {
        myExamIdea {}
        examLeaders{}
 }

这是我的BuildConfig.java类(class)
public final class BuildConfig {
  public static final boolean DEBUG = Boolean.parseBoolean("true");
  public static final String APPLICATION_ID = "in.kpis.igen.myExamIdeaStaging";
  public static final String BUILD_TYPE = "debug";
  public static final String FLAVOR = "myExamIdeaStaging";
  public static final int VERSION_CODE = 1;
  public static final String VERSION_NAME = "1.0";
}

最佳答案

BuildConfig.FLAVOR为您提供组合的产品 flavor 。如果您只有一个维度,那么您将获得当前的 flavor 。如果您有多个维度,那么您将有多个字段,例如

BuildConfig.FLAVOUR_[dimensionname]

但是,您可以获得产品 flavor 列表。

编辑 :
myExamIdea { flavorDimension "[dimension_name]"}
examLeaders{ flavorDimension "[dimension_name]"}

关于android - 如何以编程方式获取所有 android 应用程序 flavor 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49793246/

相关文章:

安卓 : missing package statement; Activity class does not exist

android - mvvm android 中的存储库可以是单例吗?

android - AVD 模拟器不适用于 android studio 2.3.3

android - 运行时异常 :Unable to find pre-dex

android - Android Studio中超出了GC开销限制

android - ActivityUnitTestCase 和 ActivityInstrumentationTestCase2 的区别

java - 停止应用程序后,Gradle 未关闭端口

android - 升级到Android Studio 2.0后获取java.lang.VerifyError

Gradle:迭代测试目录并在每个目录中执行多个任务

android - 动态应用内购买