Localisation multilingue pour les applications mobiles

MobileTogether offre une prise en charge intégrée pour la localisation transparente d'applications mobiles dans plusieurs langues. Cela permet aux développeurs de créer une seule version d'une application mobile qui fonctionne dans de nombreuses langues et sur différentes plateformes.

Les développeurs peuvent inclure des traductions dans un design d’appli unique de MobileTogether pour toutes les phrases de texte requises, et lorsqu’un utilisateur final exécute l’appli, que ce soit sur un téléphone Android, un iPhone, desktop Windows, ou toute autre plateforme prise en charge, le langage pour l’appli est sélectionné pour correspondre au langage du système d’exploitation de l’appareil.

Grâce à la localisation multilingue, même la fonctionnalité de synthèse vocale est adaptée à la langue maternelle de l'utilisateur.

Dans une version précédente, Article sur la synthèse vocale Pour illustrer les fonctionnalités de localisation, nous avons d'abord créé une application de démonstration simple. Dans cet article, nous utiliserons une version améliorée, présentée ci-dessous sur un téléphone Android, pour démontrer ces fonctionnalités :

Notre application de démonstration de localisation multilingue prend en charge plusieurs plateformes et propose des traductions en anglais, allemand, français, espagnol et italien.

Les chaînes de texte pour chaque langue sont attribuées dans la fenêtre de localisation du logiciel MobileTogether Designer

La partie supérieure de la fenêtre de dialogue permet aux développeurs d'attribuer du texte dans différentes langues pour chaque élément de l'application : les boutons "Parler", "Silence" et "Quitter", situés en haut de la fenêtre de l'application, sont traduits dans les trois premières lignes de la fenêtre de dialogue de localisation.

Lorsqu'une application est lancée sur l'appareil mobile d'un utilisateur, la langue par défaut spécifiée dans les paramètres du système d'exploitation de l'appareil détermine le texte affiché pour chaque élément de l'interface. Si l'utilisateur a configuré une autre langue, les valeurs par défaut définies dans la fenêtre de configuration de la localisation sont utilisées.

Le bouton vert en forme de plus, situé en haut de la fenêtre de dialogue, permet au développeur d'ajouter la prise en charge de langues supplémentaires à partir d'une liste de codes de langue standard

MobileTogether prend en charge la localisation multilingue, y compris les langues utilisant des alphabets non latins, comme l'azéri en caractères cyrilliques (indiqué comme "az-Cyrl-AZ" dans le menu ci-dessus), ou l'alphabet japonais des kanjis. En fait, toutes les applications de démonstration installées avec MobileTogether sont localisées en allemand, en français, en espagnol et en japonais. Ci-dessous, vous trouverez un extrait de la fenêtre de dialogue de localisation pour l'application de démonstration de calcul de prêt immobilier, où différents textes d'étiquettes sont spécifiés :

La partie inférieure de la fenêtre de dialogue de localisation permet aux développeurs d'attribuer du texte aux chaînes de caractères nommées. Dans notre application de démonstration, il s'agit de phrases qui seront affichées dans des boîtes de dialogue et prononcées pendant l'exécution.

Si la traduction de tous les textes nécessaires dans une application volumineuse et complexe est impraticable pour un développeur, les boutons "Exporter" et "Importer" situés en bas de la fenêtre de localisation permettent de gérer les textes de localisation multilingues dans des fichiers XML, en dehors de l'environnement MobileTogether Designer. Un traducteur ou un autre professionnel de la langue peut créer ou affiner les textes localisés dans un éditeur XML comme Altova XMLSpy.

Au lancement de notre application de démonstration, un groupe d'actions attribue les expressions localisées appropriées aux éléments de l'arborescence de données

Une fois que les chaînes de texte multilingues ont été définies, vous pouvez même modifier la langue utilisée pendant la simulation afin de vérifier la localisation avant de déployer l'application. L'option "Langue de la simulation" est disponible dans le menu Projet, et les langues proposées correspondent à celles définies dans la fenêtre de dialogue de localisation pour le projet.

Voici une capture d'écran de l'application de démonstration du calculateur de prêt hypothécaire, exécutée dans la fenêtre du simulateur. Dans cet exemple, la langue utilisée pour la simulation est le japonais, et l'appareil cible sélectionné est un iPhone 6 en mode portrait

L'action de définir la langue

Vous pouvez même permettre aux utilisateurs finaux d'utiliser votre application dans n'importe quelle langue pour laquelle vous avez effectué une localisation, sans avoir à modifier les paramètres de langue du système d'exploitation de l'appareil. Cette fonctionnalité pourrait être utile dans un environnement d'apprentissage des langues, ou pour des applications utilisées sur un poste de travail ou une tablette partagée par des utilisateurs qui parlent différentes langues.

Notre application de démonstration de localisation multilingue permet à l'utilisateur de choisir une nouvelle langue grâce à une liste déroulante. L'application confirme ensuite le choix via une fenêtre de message, puis redémarre dans la nouvelle langue sélectionnée.

Ci-dessous, vous trouverez une capture d'écran de l'application en cours d'exécution sur un iPhone. L'utilisateur a ouvert le menu déroulant de sélection de la langue et a fait défiler jusqu'à l'option "italien", mais n'a pas encore confirmé son choix en cliquant sur "Terminé". (Sur un téléphone Android, l'utilisateur sélectionnerait simplement l'option souhaitée en appuyant dessus.)

Une fois que l'utilisateur confirme le choix de la langue, l'application redémarre en italien

Le texte relatif au restaurant, présent dans le champ de modification, est traduit car il s'agit d'une des chaînes de texte standard définies dans la fenêtre de localisation :

Le développeur de l'application de démonstration souhaitait faire preuve de courtoisie et éviter de laisser un utilisateur se retrouver accidentellement dans une langue inconnue. Pour cela, le changement de langue implique plusieurs actions :

Tout d'abord, une action de synthèse vocale lit un message d'avertissement de redémarrage dans la langue de l'application en cours.

Deuxièmement, une fenêtre de dialogue s'affiche, contenant le même avertissement de redémarrage, également dans la langue actuelle, avec les options "OK" ou "Annuler".

Si l'utilisateur sélectionne "OK", l'élément userLanguage est mis à jour avec la valeur choisie dans la liste déroulante, puis l'action "Définir la langue" redémarre l'application.

Si l'utilisateur choisit "Annuler" au lieu de "OK", la sélection de la liste déroulante est réinitialisée à la langue actuelle, et l'application continue de fonctionner sans modifier la langue, en attendant la prochaine saisie de l'utilisateur.

Vous pouvez essayer de personnaliser vos propres applications mobiles multiplateformes en téléchargeant gratuitement le logiciel MobileTogether Designer, qui est fourni avec une aide intégrée, des tutoriels et de nombreux exemples d'applications.