Chapter 4. Creating Build Variants
When you are developing an app, you usually have a few different versions. The most common scenario is that you have a staging version that is used to manually test the app and assure its quality, and a production version. These versions usually have different settings. For example, the URL of the staging API can be different from the production API. In addition, you may have a free basic version of your app, and a paid version that has some extra features. In that case, you are already dealing with four different versions: staging free, staging paid, production free, and production paid. Having different configurations for every version can easily get very complicated.
Gradle has some convenient and extensible concepts to address this common issue. We already mentioned the debug
and release
build types that are created by Android Studio for every new project. There is another concept called product flavors, which adds even more possibilities...