Afin de créer une version gratuite et une version payante de la même application mais avec des fonctionnalités ou des ressources différentes, il est possible d’utiliser la fonctionnalité FLAVOR.
1°) Définir les versions (Flavors) :
Placer chaque Flavor dans une dimension
2°) Personnaliser les ressources des versions :
Lors de la création d’un fichier de ressources préciser la version
3°) personnaliser le code pour gérer les versions :
Définir une variable globale
private boolean bPro=true;
et /ou tester la version en cours
if(BuildConfig.FLAVOR.equals("light")) { bPro=false; }
4°) Exécuter en test les versions :
cliquez dans la table « build variants », sélectionnez Build Variant pour sélectionner la version choisie
5°) Compiler une application signée :
Juste préciser la version désirée…
Pour créer une version avec des publicités et une sans :
Pour créer des publicités voir ici
if (BuildConfig.FLAVOR.equals("adfree")) {
mAdMobAdView.setVisibility(View.GONE);}
else {mAdMobAdView.setVisibility(View.VISIBLE);}
Références :
https://www.androidauthority.com/building-multiple-flavors-android-app-706436/
https://stackoverflow.com/questions/44686153/how-to-only-display-ads-in-one-version-of-your-app
https://futurestud.io/tutorials/how-to-implement-product-flavor-dependent-permissions