Помимо конфигурации типа сборки Gradle. Если у вас больше логики, чем несколько полей (или точнее, реализаций), вы можете определить классы / файлы, которые должны существовать только в разновидности типа / сборки, поместив ее в нужную папку..
Например, вы можете создать файл config
(Java / Kotlin) и вместо того, чтобы поместить его в папку main/java/example/package/config.java
модуля, поместить его в debug/java/example/package/config.java
и release/java/example/package/config.java
с помощьюто же имя пакета, чтобы дифференцировать его реализацию для этих типов сборки.
Для вашего примера этот файл может содержать статическое поле BASE_URL
с различными значениями для разных типов сборки / разновидностей.
Это может быть сделано точно так же и для разновидностей.