Localisation d’applications iPhone : SQLI réalise Citroën Multicity

Aujourd’hui, je vous présente un bel exemple de localisation d’application.

La localisation est une opération visant à rendre votre application compatible et traduite dans la langue du téléphone de l’utilisateur.

L’application iOS Citroën Multicity, réalisée par la renommée SQLI Agency, présente un bon cas d’étude.

Si vous êtes développeur d’application, vous avez certainement pensé un jour à vouloir proposer une version multilingue de votre produit iOS.
Dans le SDK iOS, il existe une méthode qui permet de charger automatiquement une traduction d’une chaine de caractère disponible dans un fichier texte.

label.text = NSLocalizedString(@"key", @"comment");

Le fichier texte de traduction, nommé « Localizable.strings » doit être placé dans un dossier de langue de votre projet comme « fr.lproj » pour le français.
Ce fichier est un fichier texte brut qui contient des couples de clé-traduction comme suit :
"key" = "my translation";

Attention, il n’y a pas d’arobase comme pour les chaines traditionnelles.

Il existe alors deux modes pour mettre en place la localisation ou internationalisation de son application.
Vous utilisez une clé pour chaque chaine de caractères et effectuez votre traduction dans le fichier de langue.

"VIEW_TITLE" = "Actualités";

Avantage: votre code est clair puisqu’il continent uniquement des clés de référence à vos traductions.
Gros inconvénient: si l’utilisateur n’utilise pas votre fichier de traduction (son téléphone est dans une langue autre que « fr » par exemple), il verra s’afficher la clé car aucune traduction n’existe pour sa langue.
Citroën Multicity est un beau projet sur les transports et la mobilité qui utilise cette méthode. Résultat, sur mon iPhone en anglais « en » je vois les choses d’un autre point avec des clés et quelques chaines traduites.
Les clés ne ne parlent pas. Et vous ?
La seconde méthode, vivement recommandée, vise à ne pas utiliser de clés mais les chaines directement dans la méthode. Il est donc important en phase de conception de définir une langue par défaut dont les chaines de caractères à traduire seront les « clés ».
Si votre application a pour langue par défaut l’anglais et qu’elle comporte une traduction en français, les clés seront en anglais et affichées telle qu’elles si le téléphone de l’utilisateur est dans une autre langue que le français.
"News" = "Actualités";

Petit clin d’oeil à Citroën et SQLI qui pourraient en tenir compte dans la prochaine version de Citroën Multicity.
Itinéraire et transport : CITROËN MULTICITY
Itinéraire et transport : CITROËN MULTICITY 
v1.1 - 4.4 Mo - Gratuit
L'application n'existe plus sur l'App Store 

Le site mobile du service Citroën Multicity est accessible aussi dans le navigateur par mobile.multicity.citroen.fr.

Auteur: Benoit DELDICQUE

Actuellement en poste sur Strasbourg, je suis en charge de la conception et la réalisation d'applications iOS pour iPhone, iPad et iPod touch.

Articles similaires

Commentaires fermés.