Página 142 de 267
10.9. Internacionalización y localización en Flutter: Detección automática del idioma del dispositivo
Escuchar en audio
La internacionalización y la localización son aspectos cruciales de cualquier aplicación que tenga como objetivo llegar a una audiencia global. Flutter, una plataforma de desarrollo de aplicaciones móviles, brinda soporte sólido para estas funciones, lo que permite a los desarrolladores crear aplicaciones que se pueden adaptar fácilmente a diferentes idiomas y regiones. Este artículo tratará sobre la detección automática del idioma del dispositivo en Flutter.
En Flutter, la internacionalización y localización se logra a través del paquete Flutter Localizations, que proporciona widgets y clases que simplifican la localización de las aplicaciones de Flutter. Para utilizar este paquete, debe agregarlo a su archivo pubspec.yaml y luego importarlo a sus archivos Dart.
Para detectar automáticamente el idioma del dispositivo, Flutter utiliza la clase Locale de Dart. La clase Locale representa un idioma específico y posiblemente una región de país. Por ejemplo, 'en' representa inglés y 'en_US' representa el inglés tal como se usa en los Estados Unidos.
Cuando se inicia una aplicación Flutter, consulta el sistema operativo del dispositivo para obtener la lista de idiomas preferidos del usuario. Luego, esta lista se pasa al widget MaterialApp, que selecciona qué ubicación debe usar la aplicación. Si la aplicación admite el idioma preferido del usuario, se utilizará. De lo contrario, la aplicación utilizará el idioma predeterminado especificado por el desarrollador.
Para especificar los idiomas que admite su aplicación, debe configurar la propiedad supportLocales del widget MaterialApp. Esta propiedad acepta una lista de objetos de configuración regional. Por ejemplo, para admitir inglés y español, puede definir las ubicaciones admitidas como [Locale('en', 'US'), Locale('es', 'ES')].
Además, debe proporcionar archivos de recursos de localización para cada idioma que admita su aplicación. Estos son archivos que contienen las traducciones de todas las cadenas utilizadas en su aplicación. Flutter usa estos archivos para mostrar texto en el idioma apropiado. Puedes generar estos archivos manualmente o utilizar una herramienta como Flutter Intl, que automatiza el proceso.
Una vez que hayas configurado la internacionalización y la localización en tu aplicación Flutter, puedes usar la clase Localizaciones para acceder a las funciones de localización. Por ejemplo, para mostrar una cadena traducida, puedes usar Localizations.of(context, MyAppLocalizations).helloWorld, donde MyAppLocalizations es la clase que generaste con Flutter Intl y helloWorld es la clave de la cadena que deseas mostrar.
Además de mostrar cadenas traducidas, también puede utilizar la clase Localizaciones para formatear números, fechas y otros datos según la configuración regional actual. Por ejemplo, para formatear una fecha, puede usar DateFormat.yMMMd(Localizations.localeOf(context)).format(myDate), donde myDate es la fecha que desea formatear.
En conclusión, la internacionalización y la localización son aspectos esenciales del desarrollo de aplicaciones globales. Flutter facilita la implementación de estas funciones al proporcionar un paquete sólido y herramientas automatizadas. Con la detección automática del idioma del dispositivo, las aplicaciones Flutter pueden ofrecer una experiencia de usuario personalizada y localizada sin importar en qué parte del mundo se encuentren los usuarios.
Ahora responde el ejercicio sobre el contenido:
¿Cómo detecta Flutter automáticamente el idioma del dispositivo del usuario?
¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.
¡Tú error! Inténtalo de nuevo.
Siguiente página del libro electrónico gratuito: