Les mises à jour over-the-air (OTA) offrent un moyen flexible de livrer des mises à jour de traduction aux applications mobile et web sans nécessiter une nouvelle version sur l'App Store, Google Play ou d'autres plateformes de déploiement. Cette approche prend en charge la localisation continue et les flux de travail de développement agiles en réduisant les délais et les processus manuels.
La fonctionnalité OTA dans Phrase Strings s'intègre aux plateformes iOS, Android, React Native, Flutter, i18next et Rails. Les mises à jour des étiquettes de texte sont instantanément transmises aux applications mobile.
Une nouvelle version doit être créée afin que les paramètres mis à jour soient appliqués. Tout contenu inclus dans une version doit être disponible dans Phrase Strings, qui diffuse les traductions directement vers l'application. Si le contenu n'est pas présent, les traductions ne seront pas livrées.
Pour les applications mobile, l'OTA nécessite l'intégration du kit de développement logiciel (SDK) approprié dans l'application pour récupérer les traductions depuis Phrase Strings lors de l'exécution.
Astuce
Pour plus de détails sur la distribution, la version et la référence API, consultez le Developer Hub.
Lors du premier démarrage d'une application implémentant le SDK iOS, Android, React Native ou Flutter sur un appareil, un identifiant d'appareil unique et aléatoire est généré. Cet identifiant permet de suivre les utilisateurs actifs sur une période donnée. Il n’est pas utilisé pour d’autres formes ou moyens de suivi et ne contient aucune information sur l’utilisateur ou l’appareil.
Le nombre de requêtes OTA et le nombre d'utilisateurs actifs mensuels (MAU) sont limités, en fonction du forfait sélectionné.
Le MAU correspond au nombre d'appareils uniques à partir desquels des traductions sont demandées. Chaque appareil se voit attribuer un Identifiant aléatoire. Le MAU est calculé sur la base du nombre d'Identifiants uniques attribués au cours des 30 derniers jours. Chaque interaction avec les serveurs Phrase est considérée comme une requête.
Données envoyées avec les requêtes OTA
Le SDK communique avec le service OTA afin de vérifier les mises à jour et inclut les détails suivants à chaque requête :
-
Identifiant de l'appareil (par ex. "F3AFCB10-80A2-84CB-94C0-27F5EF58876D". Unique pour cette application et ne permet donc pas de suivre un appareil spécifique.)
-
Version de l'application (par ex. "1.2.0")
-
Dernière mise à jour du fichier de traduction (par ex. "1542187679")
-
Version du SDK (par ex. "1.0.0")
-
Paramètre linguistique (par ex. "de-DE")
-
Format de fichier (par ex. "Strings")
-
Client (par ex. "ios")
-
Distribution Identifiant (Identifiant de la distribution)
-
Secret d'environnement (pour distinguer le développement de la production)
Domaines utilisés par les SDK :
Datacenter UE
-
ota.eu.phrase.com
-
cdn.eu.phrase.com
-
ota.phraseapp.com
-
cdn.phraseapp.com
Datacenter US
-
ota.us.phrase.com
-
cdn.us.phrase.com
Les SDK OTA de Phrase sont conçus pour garantir que les applications restent fonctionnelles même si l'API OTA est indisponible. Dans ce cas, le SDK revient aux dernières Strings récupérées avec succès et stockées sur l'appareil, ou aux Strings intégrées incluses dans le package de l'application. Cela évite les erreurs ou les Strings manquantes pour les utilisateurs finaux. Pour garantir un repli fiable, les Strings intégrées doivent être mises à jour à chaque version de l'application.
Les distributions sont une configuration qui définit comment et où les mises à jour OTA sont livrées pour une plateforme ou un projet spécifique.
Les plateformes cible sont définies au sein de la distribution :
-
iOS
-
Android
-
Battement
-
i18next
-
Rails
Plusieurs distributions sont possibles, mais idéalement, il y a une distribution par projet. Si vous utilisez une distribution pour iOS et Android, les espaces réservés pour les deux formats sont automatiquement convertis.
Fallbacks
Si des langues de secours sont définies dans les paramètres de langue du projet auquel la distribution est connectée, les Strings de la langue sélectionnée seront affichés si la langue demandée existe, mais que la clé n'est pas traduite.
Si une langue spécifique à un pays (par ex. en-GB) est utilisée, mais ne fait pas partie de la version, le système peut utiliser une version standard (par ex. en) de cette langue si elle existe dans le projet. Si la langue demandée est introuvable, le paramètre linguistique par défaut du projet peut être utilisé à la place.
Les secours ne fonctionneront pas sur les linked keys.
Créer une distribution
Pour créer une distribution, suivez ces étapes :
-
Depuis la zone sur la page , cliquez sur Configure ou sur le nombre de configurations si certaines existent déjà.
La page s'ouvre et affiche les configurations existantes.
-
Cliquez sur New distribution. La fenêtre s'ouvre.
-
Dans l'onglet General, indiquez un , le auquel la distribution est associée, les requises et les requises.
-
Pour les distributions Android, cliquez sur l'onglet Android pour Sélectionner l'option de format qui inclut toute traduction contenant des balises HTML dans CDATA, si nécessaire.
-
Après avoir Sélectionné le projet à associer à la distribution, l'onglet Scheduling devient disponible. Si nécessaire, utilisez cet onglet pour configurer des versions OTA planifiées dans la distribution.
-
-
Dans l'onglet Fallback languages, Sélectionner les paramètres de langue de secours spécifiques à la distribution selon les besoins. Les options de secours sont classées par ordre de priorité tel qu'affiché dans la liste.
-
Optionnellement, cliquez sur l'onglet Translations pour Sélectionner l'option d'utiliser la dernière version révisée des traductions. Activer cette option uniquement lors de l'utilisation du flux de travaux de révision avancé.
-
Cliquez sur Enregistrer.
Les détails de la distribution sont affichés avec les identifiants requis par les SDK. Les détails peuvent être affichés à nouveau en cliquant sur la distribution depuis la page .
Pour mettre à jour les traductions, Créer une nouvelle version au sein de la distribution. L'état actuel du projet est exporté et mis à disposition des clients connectés.
Pour Créer une version, suivez ces étapes :
-
Depuis la page over-the-air, cliquez sur Add release à côté de la distribution requise.
La fenêtre s'ouvre.
-
Fournissez une , la requise, la , les et les .
Les langues qui ne sont pas encore ajoutées à la liste de langues de la distribution apparaissent non sélectionnées et indisponibles à la sélection. Ajouter les langues requises à la distribution pour les rendre sélectionnables dans les futures versions.
Si aucune langue n'est manuellement sélectionnée lors de la Créer d'une version, toutes les langues configurées dans la distribution sont incluses dans la version par défaut.
Si nécessaire, saisissez des balises pour inclure uniquement les clés avec des balises spécifiques dans la version. Ajouter un filtre de balise à une version inclut uniquement les clés portant cette balise. Les clés sans la balise sont entièrement exclues de la version, et l'application connectée revient aux fichiers de traduction statiques intégrés localement dans sa base de code pour ces clés. Le filtrage par balise fonctionne indépendamment du branchement : si le branchement est activé, Sélectionner la branche et la ou les balise(s) pertinente(s) ; si le branchement n'est pas activé, Sélectionner uniquement la ou les balise(s) pertinente(s).
-
Cliquez sur Enregistrer.
La version est ajoutée à la liste en bas de la page des détails de la distribution.
Pour configurer des planifications récurrentes pour la publication de la distribution, suivez ces étapes :
-
Depuis la page , cliquez sur l'icône de roue dentée
à côté de la distribution requise.
La fenêtre s'affiche.
-
Sélectionner l'onglet Planifier la publication et cliquez sur .
Les options de planification de publication s'affichent.
Remarque
Les options de planification sont également disponibles lors de la création d'une nouvelle distribution.
-
Depuis la liste déroulante , choisissez la fréquence de publication en sélectionnant l'une des options disponibles :
-
-
Sélectionner les jours de la semaine souhaités pour les publications planifiées.
-
-
Indiquez une heure et le approprié.
-
Si nécessaire, sélectionner , et pour les publications planifiées.
-
Le champ ne s'affiche que si le branchement est activé dans le projet. Sélectionner une branche met à jour la liste des paramètres régionaux et des langues.
-
-
Optionnellement, spécifiez les versions de l'application dans les champs et .
Laissez vide pour appliquer la publication planifiée à toutes les versions de l'application.
-
Cliquez sur Enregistrer.
La distribution est mise à jour avec les informations de planification de publication.
Désactiver la planification arrête la publication automatique de la distribution, mais les paramètres configurés sont enregistrés.
Remarque
Il n'existe aucune option dans l'interface utilisateur de Strings pour suspendre ou désactiver temporairement l'OTA. Pour empêcher une application de récupérer des traductions, retirez l'Identifiant de distribution de la configuration OTA de l'application ; restaurez l'Identifiant pour reprendre l'OTA. En dernier recours, Supprimer la distribution et Créer une nouvelle.
L'intégration du SDK mobile ou de la bibliothèque Web approprié(e) permet de mettre à jour les traductions en un seul clic, mais fournit également des métriques pour mesurer l'utilisation. Les rapports du SDK mobile et de la bibliothèque Web donnent un aperçu précieux des utilisateurs actifs d'applications et de leurs langues d'application. Cet ensemble de rapports est disponible pour chaque distribution, et les données sont actualisées deux fois par jour.
Des rapports sont fournis pour le nombre d'utilisateurs actifs, les requêtes globales, les requêtes par langue, les requêtes par plateforme et pour les langues d'appareil non fournies.
Les rapports pour chaque distribution sont accessibles via l'icône sur la page .
La documentation technique pour l'intégration des SDK OTA est disponible dans le fichier README de chaque référentiel de projet :