Internacionalización y localización en Flutter: soporte para múltiples idiomas

Capítulo 141

Tiempo estimado de lectura: 3 minutos

+ Ejercicio
Audio Icon

Escuchar en audio

0:00 / 0:00

La internacionalización y la localización son aspectos críticos al desarrollar una aplicación en Flutter. Esto se debe a que, para llegar a una audiencia global, es vital que su aplicación pueda usarse en múltiples idiomas y formatos de fecha, hora y números. Aquí es donde entran en juego la internacionalización y la localización. La internacionalización (i18n) es el proceso de diseñar y preparar su aplicación para ser utilizada en diferentes idiomas y regiones. La localización (l10n), a su vez, es el proceso de traducir la aplicación internacionalizada y adaptarla a una región específica.

Para comenzar a internacionalizar tu aplicación Flutter, debes agregar las dependencias `flutter_localizations` e `intl` en tu archivo `pubspec.yaml`. La primera es la biblioteca de localización de Flutter, mientras que la segunda es una biblioteca de Dart para internacionalización y localización.

dependencias:
  aleteo:
    SDK: aleteo
  ubicaciones_flutter:
    SDK: aleteo
  internacional: ^0.17.0

Después de agregar las dependencias, debe importarlas a su archivo principal y definir las configuraciones regionales que admitirá su aplicación. Esto se puede hacer en el widget `MaterialApp` o `CupertinoApp`.

importar 'paquete:flutter_localizations/flutter_localizations.dart';

Aplicación de material(
  localizacionesDelegados: [
    GlobalMaterialLocalizations.delegado,
    GlobalWidgetsLocalizations.delegado,
    GlobalCupertinoLocalizaciones.delegado,
  ],
  Configuraciones regionales admitidas: [
    const Locale('en', ''), // Inglés
    const Locale('es', ''), // Español
    // Otras configuraciones regionales...
  ],
);

La propiedad `localizationsDelegates` enumera los delegados que proporcionarán ubicaciones para la aplicación. Los delegados de ubicación `GlobalMaterialLocalizations` y `GlobalWidgetsLocalizations` proporcionan ubicaciones predeterminadas para los widgets Material Design y Flutter, respectivamente. `GlobalCupertinoLocalizations` proporciona localizaciones para widgets estilo iOS.

La propiedad `supportedLocales` define las configuraciones regionales que admite la aplicación. Cada configuración regional está representada por un objeto `Locale`, que tiene un código de idioma (`en` para inglés, `es` para español, etc.) y, opcionalmente, un código de país (para especificar variantes regionales del idioma). /p>

Una vez que defina las configuraciones regionales admitidas, puede usar el widget `Localizaciones` para acceder a las ubicaciones en sus widgets. Por ejemplo, para mostrar una fecha formateada según la configuración regional actual, puede hacer lo siguiente:

Continúa en nuestra aplicación.
  • Escuche el audio con la pantalla apagada.
  • Obtenga un certificado al finalizar.
  • ¡Más de 5000 cursos para que explores!
O continúa leyendo más abajo...
Download App

Descargar la aplicación

Texto(
  DateFormat.yMMMd().format(DateTime.now()),
);

La clase `DateFormat` proviene de la biblioteca `intl` y proporciona métodos para formatear fechas según la configuración regional actual.

Para traducir cadenas, puede definir un delegado de configuración regional personalizado que proporcione una clase de configuración regional. La clase de localización contiene métodos que devuelven las cadenas traducidas. Puede generar archivos de localización a partir de archivos de modelo utilizando la herramienta `intl_translation`.

En resumen, la internacionalización y localización en Flutter son procesos importantes para hacer que su aplicación sea accesible a una audiencia global. Si bien puede parecer complejo al principio, Flutter proporciona varias herramientas y bibliotecas para facilitar i18n y l10n.

Ahora responde el ejercicio sobre el contenido:

¿Cuál es la diferencia entre internacionalización y localización al desarrollar una aplicación Flutter?

¡Tienes razón! Felicitaciones, ahora pasa a la página siguiente.

¡Tú error! Inténtalo de nuevo.

Siguiente capítulo

Internacionalización y localización en Flutter: Detección automática del idioma del dispositivo

Arrow Right Icon
Portada de libro electrónico gratuitaCómo crear apps desde cero hasta avanzadas usando Flutter y Dart curso completo
53%

Cómo crear apps desde cero hasta avanzadas usando Flutter y Dart curso completo

5

(3)

267 páginas

Descarga la aplicación para obtener una certificación gratuita y escuchar cursos en segundo plano, incluso con la pantalla apagada.