Índice
Localización de Apps Móviles: Mejores Prácticas para iOS y Android
Puntos Clave
- iOS utiliza archivos
.stringsy.stringsdictmientras que Android usastrings.xmlen directoriosres/values-{locale}/ - La App Store Optimization (ASO) requiere metadatos localizados — título, descripción, palabras clave y capturas de pantalla — para cada mercado
- El soporte de layouts RTL debe probarse en todas las pantallas, incluyendo vistas personalizadas y animaciones
- Las actualizaciones de traducción Over-the-Air (OTA) permiten corregir traducciones sin enviar una nueva versión de la app
Localización Específica por Plataforma
Localización en iOS
iOS utiliza directorios .lproj para cada locale:
en.lproj/ Localizable.strings Localizable.stringsdict InfoPlist.strings de.lproj/ Localizable.strings Localizable.stringsdict InfoPlist.strings
Archivos clave:
- Localizable.strings — pares clave-valor para texto de UI
- Localizable.stringsdict — reglas de pluralización (esencial para idiomas con formas plurales complejas)
- InfoPlist.strings — nombre de la app y descripciones de permisos
Localización en Android
Android utiliza directorios de recursos con calificadores de locale:
res/ values/strings.xml (predeterminado/inglés) values-de/strings.xml (alemán) values-ja/strings.xml (japonés) values-ar/strings.xml (árabe)
El sistema de recursos de Android selecciona automáticamente el archivo correcto según el locale del dispositivo. Usa recursos plurals para formas plurales y string-array para listas.
App Store Optimization (ASO) para Apps Localizadas
Localiza estos elementos para cada mercado objetivo:
| Elemento | iOS App Store | Google Play |
|---|---|---|
| Nombre de app | 30 caracteres | 30 caracteres |
| Subtítulo | 30 caracteres | 80 caracteres (descripción corta) |
| Descripción | 4.000 caracteres | 4.000 caracteres |
| Palabras clave | 100 caracteres | En descripción |
| Capturas de pantalla | Hasta 10 | Hasta 8 |
| Video de vista previa | Opcional | Opcional |
Investiga palabras clave por mercado — no traduzcas directamente las keywords en inglés.
Soporte para Idiomas RTL
Para árabe, hebreo y otros idiomas RTL:
- Usa constraints
leading/trailingen lugar deleft/right(iOS) - Usa
start/enden lugar deleft/righten layouts (Android) - Refleja los iconos de navegación (flecha atrás, indentación de listas)
- Prueba texto bidireccional (contenido mixto RTL y LTR)
- Asegúrate de que las vistas personalizadas respeten la dirección del layout
Actualizaciones de Traducción Over-the-Air
Los sistemas OTA permiten actualizar traducciones sin un lanzamiento completo de la app:
- Corregir errores de traducción de inmediato
- Añadir nuevos idiomas sin cambios en el código
- Realizar pruebas A/B de traducciones para optimización de conversión
- Reducir la fatiga de actualizaciones de app para los usuarios
Servicios de Traducción para Apps Móviles: Comparación de Enfoques
Elegir el servicio de traducción adecuado para apps móviles depende del tamaño del equipo, el presupuesto y los requisitos de calidad. Aquí un desglose de los tres enfoques principales.
Traducción Manual
La traducción manual implica contratar traductores profesionales o agencias para traducir las cadenas de tu app, un idioma a la vez. Este enfoque ofrece alta calidad lingüística, especialmente para textos de marketing y contenido orientado al usuario, pero es lento y costoso. Los tiempos de entrega se miden en días o semanas, y coordinar múltiples traductores en varios idiomas introduce una sobrecarga de gestión de proyectos.
Traducción Automática con Machine Translation
Los servicios de machine translation independientes (Google Translate API, DeepL API, Azure Translator) ofrecen velocidad y bajo costo. Funcionan bien para generar borradores iniciales de cadenas de UI y documentación, pero el resultado carece de contexto de producto. Una etiqueta de botón como "Set" podría traducirse como sustantivo (una colección) en lugar de verbo (configurar) sin conocimiento de dónde aparece la cadena en la UI. El MT automatizado requiere post-edición humana antes de pasar a producción.
Servicios de Traducción de Apps Basados en Plataforma
Los servicios de traducción basados en plataforma combinan automatización con gestión de flujos de trabajo. En lugar de gestionar traductores y motores de MT por separado, una plataforma maneja el pipeline completo: extracción de cadenas, machine translation, enrutamiento de revisión humana, translation memory y entrega de vuelta a tu base de código.
Better i18n está diseñado para este modelo. Proporciona un Expo SDK (@better-i18n/expo) para apps React Native, habilitando actualizaciones de traducción OTA sin necesidad de volver a desplegar a través del App Store o Google Play. El motor de traducción con IA de la plataforma comprende el glosario del producto y el contexto de UI, produciendo traducciones conscientes de dónde aparece cada cadena en tu app. Las traducciones se entregan vía CDN con más de 300 ubicaciones edge y tiempos de carga inferiores a 50 ms, para que los usuarios vean las traducciones actualizadas al instante.
Para los equipos que evalúan servicios de traducción de apps, la pregunta clave es si necesitas un proveedor de traducción puntual o un pipeline de traducción continuo que siga el ritmo de tu ciclo de lanzamiento. Si tu app lanza nuevas funcionalidades regularmente, un enfoque de plataforma elimina la sobrecarga de coordinación que ralentiza los flujos de trabajo manuales y de MT independiente.
Errores Comunes en Localización Móvil
- Cadenas hardcodeadas en el código en lugar de archivos de recursos
- Elementos de UI con ancho fijo que se rompen con traducciones más largas
- Ignorar las formas plurales — muchos idiomas tienen más que singular/plural
- Capturas de pantalla sin traducir en los listados de la app store
- Falta de pruebas RTL para mercados de árabe y hebreo
Preguntas Frecuentes
¿Con cuántos idiomas debería lanzar? Comienza con tus 5-10 principales mercados por ingresos o base de usuarios. Primeros objetivos comunes: inglés, español, francés, alemán, japonés, chino, coreano, portugués.
¿Debería usar machine translation para cadenas de app? El machine translation puede proporcionar borradores iniciales, pero las cadenas de UI requieren revisión humana para precisión de contexto. Las cadenas cortas sin contexto son particularmente difíciles para MT.
¿Cómo gestiono la localización de contenido dinámico? Usa localización del lado del servidor para contenido dinámico (notificaciones push, mensajes in-app). La localización del lado del cliente maneja la UI estática. Un TMS puede gestionar ambos flujos de trabajo.
¿Qué hay del formato de fechas, horas y números?
Usa los formatters de la plataforma (DateFormatter en iOS, DateFormat en Android) con el locale del dispositivo. Nunca formatees fechas o números manualmente.