Par défaut, tous les indicateurs de lancement de fonctionnalités sont READ_WRITE
et définis sur DISABLED
.
Avant de pouvoir tester une fonctionnalité, vous devez remplacer la valeur par défaut utilisée dans la compilation en créant un fichier de valeurs d'indicateur pour l'indicateur. Dans un fichier de valeurs d'indicateur, vous définissez l'état (ENABLED
ou DISABLED
) et l'autorisation (READ_WRITE
ou READ_ONLY
) d'un indicateur individuel.
Une configuration de version est un répertoire qui contient tous les fichiers de valeurs d'indicateurs pour une version spécifique d'Android (avec certaines fonctionnalités activées et désactivées).
AOSP est fourni avec quelques configurations de version, telles que trunk_staging
.
Les répertoires de configuration de version se trouvent sous WORKING_DIRECTORY/build/release/aconfig/
.
Lorsque vous utilisez la commande lunch
pour choisir une cible, vous définissez également la configuration de publication pour la cible.
Par exemple, la cible trunk_staging
suivante:
lunch aosp_cf_x86_64_phone-trunk_staging-userdebug
Le pré-déploiement du trunk est une configuration de version de développement, car Google l'utilise pour tester les fonctionnalités avant leur publication générale. Cette configuration utilise principalement des indicateurs READ_WRITE
qui vous permettent de tester votre code avec des fonctionnalités activées ou désactivées au moment de l'exécution.
Pour la version générale, utilisez une configuration de version. Une configuration de version utilise principalement des indicateurs READ_ONLY
et reflète tout le code activé pour cette version.
Ajouter un indicateur à la configuration de la version trunk_staging
Pour tester un nouveau flag, ajoutez-le à la configuration de version trunk_staging
comme suit:
- Itinéraire vers
WORKING_DIRECTORY/build/release/aconfig/trunk_staging/
- Créez un répertoire portant le même nom de package que votre indicateur, comme
com.example.android.aconfig.demo.flags
indiqué dans la section Déclarer un indicateur aconfig pour Java. - Accédez au nouveau répertoire.
- Dans le répertoire, créez un fichier de valeurs d'indicateur qui combine le nom utilisé dans le fichier de déclaration d'indicateur (
.aconfig
), tel quemy_static_flag
illustré dans Déclarer un indicateur aconfig pour Java avec_flag_values.textproto
. Le nom de fichier obtenu estmy_static_flag_flag_values.textproto
. Modifiez le fichier et ajoutez un
flag_value
semblable à celui-ci:flag_value { package: "com.example.android.aconfig.demo.flags" name: "my_static_flag" state: DISABLED Permission: READ_WRITE }
Où :
package
contient le même nom de package que celui utilisé dans la déclaration.name
contient le même nom que celui utilisé dans la déclaration.state
correspond àENABLED
ouDISABLED
.permission
correspond àREAD_WRITE
ouREAD_ONLY
. En règle générale,permission
est défini surREAD_ONLY
pour les fichiers de valeurs d'indicateurs qui font partie d'une configuration de version.
Enregistrez le fichier et quittez votre éditeur.
Dans le même répertoire que le fichier de valeurs d'indicateur, créez un fichier de compilation appelé
Android.bp
. Ce fichier permet d'inclure le fichier de valeurs d'indicateur dans la compilation.Dans le fichier
Android.bp
, créez une sectionaconfig_values
semblable à celle-ci:aconfig_values { name: "aconfig-values-platform_build_release-trunk-staging-com.android.aconfig.test-all", package: "com.android.aconfig.test", srcs: [ "*_flag_values.textproto", ] }
Où :
name
est le nom unique du module de compilation Soong. Google utilise la conventionaconfig-values-platform_PATH_TO_RELEASE_CONFIG_DIR-CONFIG-NAME-package.name-all
. Notez quePATH_TO_RELEASE_CONFIG_DIR
estbuild/release
.package
contient le même nom de package que celui utilisé dans la déclaration.srcs
est une liste de tous vos fichiers de valeurs d'indicateur.
Enregistrez le fichier et quittez votre éditeur.
Accédez au répertoire situé au-dessus du répertoire actuel (
cd ..
).Modifiez le fichier
Android.bp
. Ce fichier de compilation contient une liste des noms (name
) associés à chaque fichier de valeurs d'indicateur. Ajoutez le nom que vous avez utilisé dans le fichier de compilation précédent (étape 8) à cette liste.Compilez Android et exécutez votre nouveau code pour vous assurer qu'il est activé conformément au paramètre défini dans le fichier de valeurs d'indicateur.