Una pseudoconfiguración regional es una configuración regional que está diseñada para adoptar las características de los idiomas que generan problemas con la IU, el diseño y otros aspectos de la traducción de una app. Estas se crean mediante traducciones instantáneas y automáticas para todos los mensajes localizables que pueden leerse en inglés. Un texto que no puede pseudoconfigurarse regionalmente apunta a mensajes que no pueden traducirse en tu código fuente.
Las pseudoconfiguraciones regionales ahorran tiempo y dinero, ya que te permiten hacer ajustes en el texto y el diseño de la IU antes de enviar tus mensajes en el repositorio fuente, que luego se enviarán para su traducción. Para obtener una lista de los posibles problemas de traducción, consulta la sección Cómo detectar problemas de localización.
Los nombres de las pseudoconfiguraciones regionales de Android siguen las convenciones de nomenclatura de la configuración regional estándar, y cualquier lenguaje de programación compatible con BCP 47 puede analizar sus IDs de configuración regional. En este sentido, estas configuraciones son como cualquier otra configuración regional, como francés, chino o ruso.
La plataforma Android proporciona las siguientes dos pseudoconfiguraciones regionales para representar los idiomas de izquierda a derecha (LTR) y de derecha a izquierda (RTL):
Inglés (XA): Agrega acentos latinos al texto básico de la IU en inglés, expande el texto original agregando texto sin acentuar y encierra entre corchetes cada unidad de mensaje para exponer posibles problemas del texto expandido. Entre estos problemas, se pueden encontrar la rotura del diseño y sintaxis de mensajes con formato incorrecto (por ejemplo, una oración dividida en varias partes que se muestran como mensajes entre varios paréntesis). La pseudoconfiguración regional para el inglés (XA) se muestra en la figura 1.
AR (XB): Establece la dirección del texto de los mensajes originales de izquierda a derecha en la dirección de derecha a izquierda, que invierte el orden de los caracteres en el mensaje original. En la figura 2, se muestra la pseudoconfiguración regional para el AR (XB).
Las pseudoconfiguraciones regionales pueden ayudarte a crear una versión RTL de tu app, aunque no escribas ni hables ningún idioma RTL.
Cómo habilitar las pseudoconfiguraciones regionales
Por lo general, se agregan estas configuraciones a las compilaciones orientadas a desarrolladores. Cuando eliges una pseudoconfiguración regional en tu dispositivo, todas las apps que las admiten toman las características de la configuración seleccionada, incluidas todas las apps del sistema, como Configuración y el panel de Configuración rápida.
Para usar las pseudoconfiguraciones regionales de Android, debes tener Android 4.3 (nivel de API 18) o una versión posterior y habilitar las opciones para desarrolladores en tu dispositivo. También debes reiniciar el dispositivo después de habilitar las opciones para desarrolladores.
En el siguiente procedimiento, se explica cómo habilitar las pseudoconfiguraciones regionales:
En Android Studio, habilita las pseudoconfiguraciones regionales para una app específica agregando esta configuración a tu archivo
build.gradle
:Groovy
android { ... buildTypes { debug {
pseudoLocalesEnabled
true } } }Kotlin
android { ... buildTypes.getByName("debug") { isPseudoLocalesEnabled = true } }
-
Usa la app de Configuración para seleccionar una pseudoconfiguración regional. Este paso varía según la versión de Android que tengas, como se indica a continuación:
Android 5.0 (nivel de API 21) o una versión posterior
- En el dispositivo, abre la app de Configuración y presiona Idiomas y entrada > Preferencias de idioma.
- En la lista de Preferencias de idioma, arrastra la pestaña y mueve una pseudoconfiguración regional al principio de la lista para que sea el idioma activo. Consulta la figura 3.
Android 4.4.4 (nivel de API 19) o versiones anteriores
- En el dispositivo, abre la app de Configuración y presiona Idiomas y entrada > Preferencias de idioma > Agregar un idioma.
- Presiona una pseudoconfiguración regional para agregarla a la lista de Preferencias de idioma.
- En la lista de Preferencias de idioma, arrastra la pestaña y mueve una pseudoconfiguración regional al principio de la lista para que sea el idioma activo. Consulta la figura 3.
Cómo detectar problemas de localización
Las pseudoconfiguraciones regionales proporcionan una forma efectiva y que te ahorra tiempo al momento de identificar posibles problemas de configuración regional en la IU, lo que te ayuda a detectar problemas en las siguientes áreas:
- Las cadenas codificadas, que no se pueden enviar a traducción, aparecen como texto sin acentuar en la pseudoconfiguración regional para que se puedan notar.
- Para los problemas de diseño de la IU debidos a la expansión del texto, se muestra dónde puede romperse la IU debido a esa expansión.
La concatenación de cadenas se muestra como un mensaje dividido en dos o más corchetes. Puede dificultar la traducción, porque los traductores deben traducir cada parte de forma independiente sin saber que están relacionadas. La concatenación de cadenas también puede imposibilitar una buena traducción debido a la probabilidad de que algunos idiomas requieran un orden diferente de partes o una estructura de oración completamente distinta. Por ejemplo, idiomas como el japonés, el coreano y el tamil colocan el verbo al final de la oración. Cuando se concatena una oración, los traductores no pueden cambiar el orden de las palabras según sea necesario.
Los problemas bidireccionales de texto (BIDI) ocurren, por ejemplo, cuando el contenido en una dirección de texto incluye una frase intercalada en la dirección opuesta, lo que dificulta la lectura de la cadena.
También se muestran los problemas del diseño de derecha a izquierda (RTL), como los elementos que no se duplican. Algunos ejemplos son los elementos de la IU que no se mueven hacia la izquierda, el texto que no se revierte ni se mueve hacia la izquierda, o la puntuación mal ubicada (por ejemplo, si la cadena "¡vivan las pseudoconfiguraciones regionales!" cambia a "¡selanoiger senoicarugifnocoduesp sal naviv!" en lugar de "!selanoiger senoicarugifnocoduesp sal naviv¡").