Я использую в build.gradle
во вкусах что-то вроде этого:
Properties versionProps = new Properties()
versionProps.load(new FileInputStream(file('config.conf')))
def properties_versionCode = versionProps['VERSION_CODE'].toInteger()
def properties_versionName = versionProps['VERSION_NAME']
versionName properties_versionName
versionCode properties_versionCode
Пожалуйста, посмотрите на 2-ю, 3-ю и 4-ю строки.
Вот файл config.conf
:
VERSION_NAME=1.0.0
VERSION_CODE=100
Оба файла должны быть размещены на одном уровне папок.
Для задания имен приложений и базового URL я бы использовал отдельные папки проекта, более подробно об этом here .
Вы также можете создавать настраиваемые поля сборки, чтобы они были видны в коде, вызывая BuildConfig.{FIELD}
.
defaultConfig {
...
buildConfigField "String", "OS", '"android"'
}
Тогда BuildConfig выглядит следующим образом:
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
public static final String APPLICATION_ID = "com.example.app";
public static final String BUILD_TYPE = "debug";
public static final String FLAVOR = "";
public static final int VERSION_CODE = 1;
public static final String VERSION_NAME = "1.0";
// Fields from default config.
public static final String OS = "android";
}
Подробнее здесь .