Hoy vamos a aprender cómo podemos establecer el título de nuestra APP en distintos idiomas usando Flutter.
Para Android
Lo primero que tenemos que hacer es ir al título de nuestra APP, este se encuentra dentro de android\app\src\main\AndroidManifest.xml
<application android:label="nombre_app"
Ahora vamos a crear una variable que nos permitirá cambiar el título según el idioma:
<application android:label="@string/app_name"
Hemos creado una variable llamada app_name dentro de string.
Ahora tenemos que crear estas variables, para Español e Inglés.
Primero, vamos a crear un archivo de recursos de strings para cada idioma, los archivos serían res/values-en/strings.xml
y res/values-es/strings.xml
respectivamente.
El contenido de res/values-en/strings.xml
podría ser:
<resources> <string name="app_name">My APP</string> </resources>
Y el contenido de res/values-es/strings.xml
podría ser:
<resources> <string name="app_name">Mi Aplicación</string> </resources>
Y listo, ya nos aparecerá el título de nuestra APP según el idioma que tengamos en nuestro dispositivo.
Para iOS
Lo primero que tenemos que hacer es ir al título de nuestra APP, este se encuentra dentro de ios\Runner\Info.plist
<key>CFBundleName</key> <string>nombre_app</string>
Ahora vamos a crear una variable que nos permitirá cambiar el título según el idioma:
<key>CFBundleName</key> <string>$(PRODUCT_NAME)</string>
La hemos llamado PRODUCT_NAME.
Para cambiar el nombre de la aplicación en función del idioma, vamos a crear archivos de localización específicos para cada idioma que queremos soportar. En este caso, vamos a crear archivos InfoPlist.strings
para inglés y español.
- En el directorio del proyecto, nos vamos a la ruta
ios/Runner
. Aquí, debemos tener carpetas para cada idioma que queremos soportar, comoen.lproj
yes.lproj
. - Dentro de cada una de estas carpetas, creamos o editamos el archivo
InfoPlist.strings
. - En
InfoPlist.strings
para inglés (en.lproj/InfoPlist.strings
), añadimos lo siguiente:
"CFBundleName" = "My APP";
4. En InfoPlist.strings
para español (es.lproj/InfoPlist.strings
), añade lo siguiente:
"CFBundleName" = "Mi Aplicación";
Con estos cambios, iOS seleccionará automáticamente el nombre de la aplicación correcto en función del idioma del dispositivo del usuario.
Para establecer el inglés como idioma predeterminado, debes asegurarte de que todos los textos de tu aplicación estén disponibles en inglés. Si el idioma del dispositivo del usuario no es ni inglés ni español, iOS utilizará el inglés como idioma de respaldo.
Ingeniero en Informática, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.