Comprendre la fonctionnalité Remote Config en temps réel


Remote Config en temps réel vous permet de recevoir les clés et valeurs de paramètres mises à jour dès qu'elles sont publiées sur le serveur. Cela vous permet de mettre à jour rapidement tout type d'attribut d'application contrôlé à l'aide d'une valeur de paramètre Remote Config. Grâce aux mises à jour Remote Config en temps réel, vous pouvez:

  • Réduisez les risques en déployant les fonctionnalités de manière incrémentielle auprès des utilisateurs ciblés et en effectuant un rollback d'urgence si nécessaire.
  • Améliorez l'engagement des utilisateurs en personnalisant rapidement leur expérience lorsqu'ils utilisent l'application. Par exemple, vous pouvez mettre à jour les bannières et proposer des avantages aux utilisateurs qui correspondent à des propriétés utilisateur Google Analytics spécifiques, ou ajuster dynamiquement la difficulté de jeu pour des cohortes de joueurs.
  • Réduisez les dépendances de compilation et augmentez la productivité des développeurs: utilisez les paramètres Remote Config en tant que flags de fonctionnalité afin d'exposer des fonctionnalités à vos équipes de développement et de test, tout en les gardant invisibles pour les utilisateurs en production.

Pour en savoir plus sur les façons d'utiliser Remote Config, consultez Que pouvez-vous faire avec Remote Config ?

Dans ce guide, vous allez:

  • En savoir plus sur la relation client-serveur compatible avec les mises à jour en temps réel
  • Comprendre le fonctionnement des fonctionnalités en temps réel du SDK.
  • Découvrez comment utiliser les mises à jour en temps réel pour maintenir à jour la configuration de votre application.

La connexion client-serveur en temps réel

Lorsque vous implémentez Remote Config en temps réel dans votre application, vous créez un écouteur en temps réel qui ouvre une connexion HTTP au backend Remote Config. La requête inclut la version de configuration actuellement mise en cache sur l'appareil. Le serveur Remote Config en temps réel utilise un message d'invalidation pour signaler à l'application qu'une version plus récente d'une configuration côté serveur doit être extraite.

Si le serveur dispose d'une version plus récente, il envoie immédiatement le signal d'invalidation. S'il ne dispose pas d'une version plus récente, la connexion reste ouverte et attend qu'une version soit publiée sur le serveur. Lorsque le SDK client reçoit un signal d'invalidation, il le récupère automatiquement, puis appelle le rappel de l'écouteur enregistré lorsque vous avez ouvert la connexion de l'écouteur. Cette extraction est semblable à l'appel de récupération que vous pouvez effectuer avec le SDK, mais contourne tout paramètre de mise en cache ou minimumFetchInterval. La connexion client-serveur est maintenue lorsque l'application est au premier plan.

Workflow client-serveur Remote Config en temps réel
Workflow client-serveur Remote Config en temps réel

Étant donné que la connexion client-serveur est établie via HTTP, elle ne nécessite aucune dépendance envers d'autres bibliothèques.

Écouter les mises à jour

Les mises à jour en temps réel complètent les appels Remote Config fetch. Nous vous recommandons d'appeler la récupération au démarrage de votre application (ou à un moment donné pendant le cycle de vie de votre application) et d'écouter les mises à jour Remote Config en temps réel pendant la session utilisateur pour vous assurer de disposer des dernières valeurs dès qu'elles sont publiées sur le serveur.

Pour écouter les mises à jour, appelez addOnConfigUpdateListener, implémentant un rappel appelé chaque fois qu'une mise à jour Remote Config est disponible dans l'application. En coulisses, cet appel commence à écouter les mises à jour du serveur Remote Config. Pour en savoir plus sur la relation client-serveur, consultez la section précédente.

Le rappel est souvent un bon endroit pour utiliser activate afin de mettre les paramètres de configuration mis à jour à la disposition de votre application. Consultez les stratégies de chargement Remote Config Firebase pour découvrir d'autres stratégies permettant d'activer les valeurs de paramètre lorsque vous utilisez Remote Config en temps réel.

Activer sélectivement les valeurs des paramètres

Lorsque vous appelez addOnConfigUpdateListener, , vous pouvez attendre la modification et l'activer.

Le rappel onUpdate est appelé lorsqu'une nouvelle version du modèle a été automatiquement récupérée et lorsqu'elle modifie les valeurs de paramètres actuellement activées dans l'application.

Ces rappels sont appelés avec un paramètre configUpdate. configUpdate contient,, updatedKeys et, qui est l'ensemble des clés de paramètre modifiées qui ont déclenché la mise à jour en temps réel et inclut les éléments suivants:

  • Clés de paramètre ajoutées ou supprimées
  • Clés de paramètre dont les valeurs ont changé
  • Clés de paramètre dont les métadonnées ont changé (par exemple, les informations de personnalisation Remote Config)
  • Clés de paramètre dont la source de valeur a changé (par exemple, une valeur par défaut dans l'application mise à jour vers une valeur côté serveur)

Si vous utilisez un écouteur en temps réel dans une vue particulière de votre application, vous pouvez vérifier si les paramètres pertinents pour cette vue ont changé avant de l'activer.

Parfois, une récupération (lancée lorsque vous appelez la méthode fetch ou par Remote Config en temps réel) n'entraîne pas de mise à jour pour le client. Dans ces cas, la méthode ou l'achèvement, onUpdate etne seront pas appelés.

Ajouter et supprimer des écouteurs

addOnConfigUpdateListener est le principal point d'entrée de Remote Config en temps réel. Appeler cet écouteur pour la première fois dans le cycle de vie de votre application ouvre la connexion au backend. Les appels suivants réutilisent la même connexion, multiplexant le message d'invalidation décrit dans la connexion client-serveur en temps réel.

L'appel renvoie un "enregistrement d'écouteur" avec une méthode appelée remove.

Pour arrêter l'écoute, stockez la référence à l'enregistrement de l'écouteur. Appelez remove pour arrêter d'écouter à cette inscription. S'il s'agit du seul écouteur enregistré, l'appel de remove ferme la connexion en temps réel au serveur.

Bien que vous puissiez arrêter manuellement l'écoute des mises à jour, ce n'est souvent pas nécessaire. Le Remote Config en temps réel arrête automatiquement d'écouter les mises à jour lorsque l'application passe en arrière-plan et redémarre lorsqu'elle est fermée.

Étapes suivantes

Consultez Premiers pas avec Firebase Remote Config pour configurer Remote Config et commencer à écouter les mises à jour en temps réel.