I am using Gradle to build my Android application. I am trying to use some flags based on the build type (release or debug).
My Gradle file looks like this:
android {
buildTypes {
debug {
buildConfigField 'boolean', 'PREPROD', 'true'
buildConfigField 'boolean', 'STAGING', 'false'
}
release {
buildConfigField 'boolean', 'PREPROD', 'false'
buildConfigField 'boolean', 'STAGING', 'false'
}
}
}
And if I try to call BuildConfig.PREPROD
or BuildConfig.STAGING
I get a "Cannot resolve symbol" error.
The Gradle sync was successful, so I don't know if I forgot some steps in order to be able to use this feature?
The generated BuildConfig.java
file is the following (in build/source/buildConfig/debug/com.example.myapp
):
package com.example.myapp;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String PACKAGE_NAME = "com.example.myapp";
public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 400;
public static final String VERSION_NAME = "";
}
build/source/buildconfig/debug/...
– BelittleBuildConfig.java
to my question. – MinetteBuildConfig.java
. Is this the normal behaviour? First sync Gradle, and then run the project to have access to the new fields? – Minette