¿Qué son las actualizaciones de traducción OTA?
Las actualizaciones de traducción OTA (Over-the-Air) te permiten enviar cambios de traducción directamente a los usuarios de tu aplicación móvil sin necesidad de que descarguen una nueva versión desde App Store o Google Play.
Piense en ello como si las aplicaciones actualizaran su contenido (noticias, listas de productos, etc.) sin necesidad de una actualización completa de la aplicación. Las actualizaciones de traducción OTA aplican el mismo concepto al contenido de texto de tu aplicación.
El problema tradicional
Sin actualizaciones OTA, cambiar cualquier traducción requiere:
- Tiempo de desarrollo: Actualizar los archivos de traducción, probar, fusionar
- Proceso de creación: Creación de una nueva aplicación
- Envío a la tienda de aplicaciones: Subir a App Store Connect / Google Play Console
- Periodo de revisión: 1-7 días para Apple, 1-3 días para Google
- Adopción por parte de los usuarios: Espero que los usuarios tengan activadas las actualizaciones automáticas
Tiempo total: de 3 a 14 días para corregir una errata
Puntos débiles en el mundo real
**Equipo de marketing "Necesitamos actualizar el texto promocional para la campaña de vacaciones" Desarrollador: "Si tenemos suerte con la revisión de la aplicación, tardaremos dos semanas" Equipo de marketing: "Pero la campaña empieza el lunes..."
**Equipo de control de calidad: "Hay un error tipográfico en el flujo de pago alemán" Desarrollador: "Lo arreglaré en la próxima versión" Usuarios: Ver "Kasse bezaheln" en lugar de "Kasse bezahlen" durante 3 semanas
Cómo funcionan las actualizaciones OTA
Arquitectura
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ IntlPull │────▶│ CDN │────▶│ Mobile App │
│ Dashboard │ │ (Worldwide) │ │ │
│ │ │ │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
Update Cache & Fetch on
translations distribute launch
The Flow
- Usted actualiza las traducciones en el panel de IntlPull o las envía a través de CLI
- Haga clic en publicar para desplegar los cambios
- CDN distribuye las traducciones actualizadas globalmente
- La aplicación busca actualizaciones al iniciarse (o periódicamente)
- Descarga delta: Sólo se obtienen las cadenas modificadas
- Los usuarios ven las actualizaciones inmediatamente
Implementación técnica
iOS SDK:
Swift1import IntlPull 2 3@main 4struct MyApp: App { 5 init() { 6 IntlPull.configure( 7 projectId: "your-project", 8 apiKey: "your-key", 9 updatePolicy: .onLaunch // or .periodic(minutes: 30) 10 ) 11 } 12 13 var body: some Scene { 14 WindowGroup { 15 ContentView() 16 } 17 } 18} 19 20// Usage anywhere in your app 21struct WelcomeView: View { 22 var body: some View { 23 Text(IntlPull.t("welcome.title")) 24 // Updates automatically when translations change 25 } 26}
SDK de Android:
Kotlin1class MyApp : Application() { 2 override fun onCreate() { 3 super.onCreate() 4 5 IntlPull.configure( 6 context = this, 7 projectId = "your-project", 8 apiKey = "your-key", 9 updatePolicy = UpdatePolicy.OnLaunch 10 ) 11 } 12} 13 14// Usage 15class MainActivity : AppCompatActivity() { 16 override fun onCreate(savedInstanceState: Bundle?) { 17 super.onCreate(savedInstanceState) 18 19 binding.welcomeText.text = IntlPull.t("welcome.title") 20 } 21}
React Native:
JSX1import { IntlPullProvider, useIntlPull } from '@intlpullhq/react-native'; 2 3function App() { 4 return ( 5 <IntlPullProvider 6 projectId="your-project" 7 apiKey="your-key" 8 > 9 <WelcomeScreen /> 10 </IntlPullProvider> 11 ); 12} 13 14function WelcomeScreen() { 15 const { t } = useIntlPull(); 16 return <Text>{t('welcome.title')}</Text>; 17}
Características principales
Actualizaciones Delta
Sólo se descarga lo que ha cambiado. Si actualiza 5 cadenas de 5.000, los usuarios descargan ~500 bytes en lugar del archivo de traducción completo.
JSON1// Delta update payload 2{ 3 "version": "2026-01-10T15:30:00Z", 4 "changes": { 5 "welcome.title": "Welcome back!", // Changed 6 "promo.banner": "Holiday Sale!" // Changed 7 } 8}
Soporte Offline
Las traducciones se almacenan en caché localmente. Si la red no está disponible, la aplicación utiliza las traducciones almacenadas en caché.
Swift1IntlPull.configure( 2 // ... 3 fallbackBehavior: .useCached, // Use cached if offline 4 bundledTranslations: true // Include baseline in app bundle 5)
Control de versiones
Retroceda a cualquier versión anterior al instante:
Terminal1// CLI rollback 2npx @intlpullhq/cli rollback --version 2026-01-01 3 4// Or in dashboard: click "Rollback" on any version
Soporte de entorno
Pruebe las traducciones antes de pasarlas a producción:
Swift1IntlPull.configure( 2 // ... 3 environment: .staging // or .production 4)
Casos de uso
1. Corregir errores de traducción
Antes de la OTA: Espere 1-2 semanas para el lanzamiento de la aplicación Con OTA: Corregido en menos de un minuto
2. Campañas estacionales
Summer Sale → Back to School → Halloween → Black Friday → Holiday
Actualice el texto promocional al instante sin tener que planificar los lanzamientos en función de las campañas de marketing.
3. Copia de pruebas A/B
Pruebe diferentes traducciones para optimizar la conversión:
Version A: "Start Free Trial"
Version B: "Try Free for 14 Days"
Mida los resultados y cambie al ganador. No es necesario lanzar la aplicación.
4. Lanzar nuevos idiomas
Añade soporte para un nuevo idioma sin esperar a la próxima versión:
- Añadir traducciones en IntlPull
- Publique
- Los usuarios que fijen ese idioma lo verán inmediatamente
5. Actualizaciones legales/de conformidad
Cuando la normativa exija cambios en el texto, actualícelo inmediatamente en lugar de tener que buscar una publicación de emergencia.
Consideraciones de seguridad
Protección de claves API
Swift1// Don't hardcode keys in source 2IntlPull.configure( 3 apiKey: Secrets.intlPullKey // From secure storage 4)
Verificación de Contenidos
Las actualizaciones OTA están firmadas y verificadas:
Swift1IntlPull.configure( 2 // ... 3 verifySignature: true // Verify content integrity 4)
Limitaciones del ámbito de aplicación
Las actualizaciones OTA sólo pueden cambiar las traducciones, no el código, ni los diseños, ni la funcionalidad. Esto le permite cumplir con las directrices de la tienda de aplicaciones.
Comparación: OTA vs Tradicional
| Aspecto | Tradicional | OTA |
|---|---|---|
| Tiempo de actualización 3-14 días Instantáneo | ||
| Acción del usuario necesaria Actualización de la aplicación Ninguna | ||
| Riesgo de rechazo: Sí | ||
| Velocidad de reversión Días Segundos | ||
| Pruebas A/B Múltiples versiones Panel de control | ||
| Coste por actualización Tiempo de desarrollo + revisión Gratis |
Por qué otros TMS no ofrecen OTA
Construir OTA requiere:
- Infraestructura CDN global: Caro de operar
- SDKs nativos: iOS, Android, React Native, Flutter
- Sistema de actualización delta: Ingeniería compleja
- Caché offline: Almacenamiento local robusto
- Gestión de versiones: Capacidad de reversión
La mayoría de las plataformas TMS (Lokalise, Crowdin, Phrase) se centran en el flujo de trabajo de traducción y exportan archivos para que usted los incluya en su aplicación. IntlPull construyó OTA desde cero.
Introducción a OTA
Paso 1: Crear cuenta IntlPull
Regístrate gratis. No se requiere tarjeta de crédito.
Paso 2: Añada su proyecto
Importe traducciones existentes o empiece de cero.
Paso 3: Instalar SDK
iOS (CocoaPods):
RUBYpod 'IntlPull'
iOS (SPM):
https://github.com/intlpull/intlpull-ios
Android (Gradle):
GROOVYimplementation 'com.intlpull:sdk:1.0.0'
React Native:
Terminalnpm install @intlpullhq/react-native
Paso 4: Configurar y enviar
Inicializar el SDK y empezar a utilizar las traducciones. Ya está. Las actualizaciones fluyen automáticamente.
FAQ
**P: ¿Cumple con las directrices de la App Store? R: Sí. Las actualizaciones OTA de contenido (incluidas las traducciones) están explícitamente permitidas. No estás actualizando código o funcionalidad.
**P: ¿Qué pasa con los usuarios sin conexión? R: Las traducciones se almacenan en la caché local. Los usuarios sin conexión ven las traducciones en caché hasta que vuelven a conectarse.
**P: ¿Cómo de rápidas son las actualizaciones? R: La CDN distribuida globalmente entrega las actualizaciones en <100 ms a los usuarios de todo el mundo.
**P: ¿Qué pasa si una actualización rompe algo? R: Reversión instantánea. Un clic en el panel de control y todos los usuarios recuperan la versión anterior.
**P: ¿Puedo usar esto con la configuración i18n existente? R: Sí. IntlPull SDK puede envolver las implementaciones existentes o trabajar de forma independiente.
Conclusión
Las actualizaciones de traducción OTA transforman la localización móvil de un proceso lento y doloroso a un flujo de trabajo ágil y receptivo:
- Corrige erratas al instante en lugar de esperar semanas
- Actualiza los textos de marketing según tu calendario, no el de Apple
- Pruebe las traducciones sin tener que compilar varias aplicaciones
- Lanzamiento de idiomas más rápido sin coordinación de versiones
IntlPull es el único TMS que ofrece soporte OTA completo para iOS, Android y React Native.
**Empieza tu prueba gratuita](/auth/signup) y experimenta las actualizaciones OTA hoy mismo.
