10. Internationalisation et localisation dans Flutter
Page 133 | Écouter en audio
L'internationalisation et la localisation sont des aspects cruciaux pour toute application visant à atteindre un public mondial. Dans Flutter, ces aspects sont gérés via une série d'outils et de bibliothèques qui permettent aux développeurs de créer des applications prenant en charge plusieurs langues et formats de date/heure. Ce chapitre expliquera comment implémenter l'internationalisation et la localisation dans les applications Flutter.
1. Ajout de la prise en charge linguistique
La première étape pour ajouter la prise en charge linguistique à une application Flutter consiste à ajouter la bibliothèque flutter_localizations au fichier pubspec.yaml. Cette bibliothèque fournit des classes qui permettent de charger et d'afficher du texte traduit, ainsi que de gérer les formats de date, d'heure et de nombres spécifiques aux paramètres régionaux.
2. Définir des paramètres régionaux
Après avoir ajouté la bibliothèque flutter_localizations, l'étape suivante consiste à définir les paramètres régionaux pris en charge par votre application. Cela peut être fait en ajoutant une liste d'objets Locale à la propriété supportéeLocales du widget MaterialApp ou CupertinoApp. Chaque objet Locale représente une langue ou une combinaison de langue et de pays.
3. Création de fichiers de traduction
Pour chaque langue prise en charge par votre application, vous devez créer un fichier de traduction. Ce fichier contient des paires clé-valeur, où la clé est le texte anglais original et la valeur est la traduction. Flutter utilise le format ARB pour les fichiers de traduction, qui est un format JSON avec quelques extensions.
4. Générer des classes de localisation
Après avoir créé les fichiers de traduction, vous devez générer les classes de localisation. Ce sont des classes Dart qui chargent et fournissent les traductions pour votre application. Flutter fournit un outil appelé gen_l10n qui génère automatiquement ces classes à partir de vos fichiers de traduction.
5. Utiliser les classes de localisation
Une fois les classes de localisation générées, vous pouvez les utiliser pour afficher les textes traduits dans votre application. Pour ce faire, vous devez obtenir une instance de la classe de localisation correspondant aux paramètres régionaux actuels à l'aide de la méthode Localizations.of. Après cela, vous pouvez accéder aux traductions en utilisant les propriétés de la classe de localisation.
6. Changer les paramètres régionaux
Si vous souhaitez autoriser les utilisateurs à modifier la langue de votre application, vous pouvez le faire en modifiant les paramètres régionaux du widget MaterialApp ou CupertinoApp. Pour ce faire, vous devez stocker les paramètres régionaux sélectionnés quelque part (par exemple, dans un état de widget) et les transmettre à la propriété locale de MaterialApp ou CupertinoApp.
7. Ajout de la prise en charge des formats de date et d'heure
En plus de traduire du texte, vous souhaiterez peut-être également afficher les dates, les heures et les nombres dans un format spécifique aux paramètres régionaux. Pour ce faire, vous pouvez utiliser la classe DateFormat de la bibliothèque intl. Cette classe fournit des méthodes pour formater et analyser les dates et les heures en fonction des paramètres régionaux actuels.
8. Tester l'internationalisation
Enfin, il est important de tester l'internationalisation de votre application pour vous assurer qu'elle fonctionne correctement dans toutes les langues et paramètres régionaux pris en charge. Pour ce faire, vous pouvez utiliser la classe TestWidgetsFlutterBinding pour définir les paramètres régionaux de chaque test.
En résumé, l'internationalisation et la localisation sont des aspects essentiels pour toute application visant à atteindre un public mondial. Flutter fournit un certain nombre d'outils et de bibliothèques qui facilitent cette tâche, vous permettant de créer des applications prenant en charge plusieurs langues et formats de date/heure avec une relative facilité.
Répondez maintenant à l’exercice sur le contenu :
Quelle est la première étape pour ajouter la prise en charge linguistique à une application Flutter ?
Tu as raison! Félicitations, passez maintenant à la page suivante
Vous avez raté! Essayer à nouveau.
Page suivante de lebook gratuit :