Au fur et à mesure que votre application évolue, les nouvelles versions peuvent introduire des modifications incompatibles avec les API de backend, résoudre des failles de sécurité critiques ou remplacer des services et des modèles d'IA obsolètes. Dans ce cas, les versions antérieures de l'application peuvent cesser de fonctionner de manière fiable ou sécurisée.
Remote Config vous permet de contrôler dynamiquement les exigences de version de l'application depuis le cloud. En définissant des paramètres de version dans Remote Config, vous pouvez inviter ou obliger les utilisateurs à mettre à jour leur application sans déployer d'infrastructure de serveur personnalisée ni publier de mise à jour d'urgence.
Choisir une stratégie de mise à jour
Remote Config fournit les paramètres de version à évaluer sur le client, ce qui vous permet de configurer l'UI de mise à jour de votre application pour l'une des deux stratégies en fonction de la gravité de la modification :
- Mise à jour forcée (bloquante) : si une version antérieure de l'application est incompatible avec votre backend ou présente un risque de sécurité, vous pouvez bloquer l'accès à l'application jusqu'à ce que l'utilisateur la mette à jour. Lorsque la version installée est antérieure à la version minimale requise, vous pouvez configurer votre application pour qu'elle affiche une boîte de dialogue non dismissible qui redirige l'utilisateur vers la plate-forme de téléchargement d'applications pour qu'il installe la dernière version.
- Mise à jour flexible (facultative) : si une mise à jour introduit de nouvelles fonctionnalités, des améliorations des performances ou des corrections de bugs mineurs, vous pouvez configurer votre application pour qu'elle affiche une bannière ou un message que les utilisateurs peuvent ignorer, les encourageant à effectuer la mise à jour à leur convenance tout en leur permettant de continuer à utiliser l'application.
Étape 1 : Configurez les paramètres dans la console Firebase
Pour gérer les versions d'application, définissez des paramètres dans votre modèle Remote Config :
- Dans la console Firebase, accédez à DevOps et engagement > Remote Config > Page "Paramètres".
- Cliquez sur Ajouter un paramètre (ou sur Créer une configuration s'il s'agit de votre premier paramètre).
- Définissez les paramètres suivants :
minimum_version: chaîne représentant la version la plus ancienne de votre application qui est prise en charge (par exemple,"2.4.0"). Les applications exécutant une version antérieure à cette valeur sont bloquées jusqu'à ce qu'elles soient mises à jour.latest_version(facultatif) : chaîne représentant la dernière version disponible de votre application (par exemple,"2.5.1"). Les applications exécutant une version comprise entreminimum_versionetlatest_versionpeuvent afficher une recommandation de mise à jour facultative.update_url(facultatif) : URL du magasin où les utilisateurs peuvent télécharger la mise à jour (par exemple, la fiche de votre application sur le Google Play Store ou l'App Store d'Apple).
- Facultatif : Ajoutez des conditions spécifiques à la plate-forme :
- Étant donné que les applications Android et Apple utilisent souvent des versions et des URL de l'App Store différentes, vous pouvez ajouter des valeurs conditionnelles pour chaque plate-forme sous le même paramètre.
- Cliquez sur Ajouter une valeur pour la condition > Créer une condition. Nommez la condition (par exemple,
Android AppouiOS App), sélectionnez Application comme règle de ciblage, puis choisissez votre application. - Définissez la chaîne de version appropriée pour chaque condition de plate-forme et conservez la valeur par défaut comme solution de secours.
- Cliquez sur Enregistrer, puis sur Publier les modifications pour appliquer le modèle.
Étape 2 : Implémenter des vérifications de version côté client
Sur le client, comparez la version de l'application installée aux paramètres Remote Config au démarrage :
- Définissez des valeurs par défaut dans l'application : fournissez toujours des valeurs par défaut sécurisées dans votre app bundle (par exemple, définissez
minimum_versionsur la version initiale de votre application, telle que"1.0.0"). Cette configuration de secours permet à votre application de continuer à fonctionner normalement si l'appareil est hors connexion ou si la première requête de récupération échoue. Pour obtenir des conseils spécifiques à la plate-forme, consultez Télécharger les valeurs par défaut du modèle Remote Config. - Récupérer et activer Remote Config : récupérez et activez les dernières valeurs de modèle au démarrage de votre application.
Comparer les versions : récupérez les chaînes
minimum_versionetlatest_versionactives, puis comparez-les à la version de l'application actuellement installée.Passez à l'action en fonction de la comparaison des versions :
- Imposer la mise à jour requise : si
current_versionest antérieur àminimum_version, affichez une alerte modale en plein écran et non dismissible. Désactivez la navigation vers le reste de l'application et fournissez un bouton qui ouvreupdate_urldans le magasin d'applications de la plate-forme. - Inviter à effectuer une mise à jour facultative : si
current_versionest antérieur àlatest_version, affichez une boîte de dialogue ou une notification que l'utilisateur peut fermer pour l'informer qu'une mise à jour est disponible, avec les options Mettre à jour maintenant ou Plus tard. - Autoriser l'accès : dans le cas contraire, autorisez l'utilisateur à accéder à l'application.
- Imposer la mise à jour requise : si
Bonnes pratiques
- Ajoutez un écouteur en temps réel : lorsque des mises à jour de version sont requises en raison de problèmes de sécurité ou d'une dégradation sérieuse de l'expérience utilisateur, l'ajout d'un écouteur Remote Config en temps réel à votre application peut vous aider à vous assurer que les modifications des exigences de version prennent effet immédiatement sur les appareils actifs, sans attendre la prochaine récupération planifiée ni le redémarrage de l'application.
- Testez avec un groupe de test limité : avant d'augmenter la valeur
minimum_versionpour tous les utilisateurs en production, testez la condition avec un groupe de test limité ou ciblez les testeurs internes à l'aide de propriétés utilisateur personnalisées. Ce test permet de vérifier que la fenêtre modale de blocage s'affiche correctement et que les liens vers les magasins fonctionnent comme prévu. - Utilisez les API de mise à jour intégrées à la plate-forme : sur Android, envisagez d'intégrer Google Play In-App Updates en plus de vos vérifications Remote Config pour permettre aux utilisateurs de télécharger et d'installer les mises à jour sans quitter votre application.
- Consulter les checklists de production : consultez la checklist de lancement Firebase et la checklist de production AI Logic pour obtenir d'autres conseils sur la préparation de votre application et de vos fonctionnalités d'IA pour la production.