获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

Premiers pas avec Firebase Remote Config


Vous pouvez utiliser Firebase Remote Config pour définir des paramètres dans votre application et mettre à jour leurs valeurs dans le cloud, ce qui vous permet de modifier l'apparence et le comportement de votre application sans distribuer de mise à jour d'application.

La bibliothèque Remote Config est utilisée pour stocker les valeurs de paramètre par défaut dans l'application, récupérer les valeurs de paramètre mises à jour à partir du backend Remote Config et contrôler quand les valeurs récupérées sont mises à la disposition de votre application. Pour en savoir plus, consultez Stratégies de chargement de Remote Config .

Ce guide vous guide à travers les étapes de démarrage et fournit des exemples de code, qui peuvent tous être clonés ou téléchargés à partir du référentiel firebase/quickstart-unity GitHub.

Étape 1 : Ajoutez Remote Config à votre application

Avant de pouvoir utiliser Remote Config , vous devez :

  • Enregistrez votre projet Unity et configurez-le pour utiliser Firebase.

    • Si votre projet Unity utilise déjà Firebase, il est déjà enregistré et configuré pour Firebase.

    • Si vous n'avez pas de projet Unity, vous pouvez télécharger un exemple d'application .

  • Ajoutez le SDK Firebase Unity (en particulier, FirebaseRemoteConfig.unitypackage ) à votre projet Unity.

Notez que l'ajout de Firebase à votre projet Unity implique des tâches à la fois dans la console Firebase et dans votre projet Unity ouvert (par exemple, vous téléchargez les fichiers de configuration Firebase à partir de la console, puis les déplacez dans votre projet Unity).

Étape 2 : Définissez les valeurs des paramètres par défaut dans l'application

Vous pouvez définir des valeurs de paramètre par défaut dans l'application dans l'objet Remote Config, afin que votre application se comporte comme prévu avant de se connecter au backend Remote Config, et pour que les valeurs par défaut soient disponibles si aucune n'est définie dans le backend.

Pour ce faire, créez un dictionnaire de chaînes et remplissez-le avec des paires clé/valeur représentant les valeurs par défaut que vous souhaitez ajouter. Si vous avez déjà configuré les valeurs des paramètres backend de Remote Config, vous pouvez télécharger un fichier contenant ces paires clé/valeur et l'utiliser pour construire votre dictionnaire de chaînes. Pour plus d'informations, consultez Télécharger les valeurs par défaut du modèle Remote Config .

(Les propriétés non-chaîne seront converties en type de propriété lorsque SetDefaultsAsync() est appelé).

System.Collections.Generic.Dictionary<string, object> defaults =
  new System.Collections.Generic.Dictionary<string, object>();

// These are the values that are used if we haven't fetched data from the
// server
// yet, or if we ask for values that the server doesn't have:
defaults.Add("config_test_string", "default local string");
defaults.Add("config_test_int", 1);
defaults.Add("config_test_float", 1.0);
defaults.Add("config_test_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.SetDefaultsAsync(defaults)
  .ContinueWithOnMainThread(task => {

Étape 3 : Obtenir les valeurs des paramètres à utiliser dans votre application

Vous pouvez maintenant obtenir des valeurs de paramètre à partir de l'objet Remote Config. Si vous définissez des valeurs dans le backend Remote Config, les récupérez, puis les activez, ces valeurs sont disponibles pour votre application. Sinon, vous obtenez les valeurs des paramètres intégrés à l'application configurées à l'aide SetDefaultsAsync() .

Pour obtenir ces valeurs, utilisez GetValue() , en fournissant la clé de paramètre comme argument. Cela renvoie un ConfigValue , qui a des propriétés pour convertir la valeur en différents types de base.

Étape 4 : Connectez votre application à la console Firebase

Dans la console Firebase , ajoutez votre application à votre projet Firebase.

Étape 5 : Définir les valeurs des paramètres

  1. Dans la console Firebase , ouvrez votre projet.
  2. Sélectionnez Remote Config dans le menu pour afficher le tableau de bord Remote Config.
  3. Définissez des paramètres avec les mêmes noms que les paramètres que vous avez définis dans votre application. Pour chaque paramètre, vous pouvez définir une valeur par défaut (qui finira par remplacer la valeur par défaut de l'application) et des valeurs conditionnelles. Pour en savoir plus, voir Paramètres et conditions de Remote Config .

Étape 6 : Récupérer et activer les valeurs (si nécessaire)

Pour récupérer les valeurs des paramètres à partir du backend Remote Config, appelez la méthode FetchAsync() . Toutes les valeurs que vous définissez sur le backend sont extraites et mises en cache dans l'objet Remote Config.

// Start a fetch request.
// FetchAsync only fetches new data if the current data is older than the provided
// timespan.  Otherwise it assumes the data is "recent enough", and does nothing.
// By default the timespan is 12 hours, and for production apps, this is a good
// number. For this example though, it's set to a timespan of zero, so that
// changes in the console will always show up immediately.
public Task FetchDataAsync() {
  DebugLog("Fetching data...");
  System.Threading.Tasks.Task fetchTask =
  Firebase.RemoteConfig.FirebaseRemoteConfig.DefaultInstance.FetchAsync(
      TimeSpan.Zero);
  return fetchTask.ContinueWithOnMainThread(FetchComplete);
}

Les valeurs extraites via FetchAsync() sont mises en cache localement lorsque l'extraction est terminée, mais ne sont pas disponibles tant que ActivateFetched() n'est pas appelé. Étant donné que FetchAsync() s'exécute de manière asynchrone, cela vous permet de vous assurer que les nouvelles valeurs ne sont pas appliquées au milieu du calcul, ou à d'autres moments qui pourraient causer des problèmes ou un comportement étrange.

Étape 7 : (Facultatif) Activer le mode développeur

Pour activer le mode développeur, qui peut être utilisé pour désactiver la limitation pendant le développement, vous pouvez utiliser la propriété FirebaseRemoteConfig.Setting , en définissant un nouveau ConfigSettings avec IsDeveloperMode défini sur true.

Next steps

If you haven't already, explore the Remote Config use cases , and take a look at some of the key concepts and advanced strategies documentation, including: