Las actualizaciones Por el aire (OTA) ofrecen una forma flexible de entregar actualizaciones de traducción a aplicaciones móviles y web sin requerir un nuevo lanzamiento en la App Store, Google Play u otras plataformas de implementación. Este enfoque apoya la localización continua y los flujos de trabajo de desarrollo ágil al reducir retrasos y procesos manuales.
La función OTA en Phrase Strings se integra con plataformas iOS, Android, React Native, Flutter, i18next y Rails. Las actualizaciones para etiquetas de texto se envían instantáneamente a las aplicaciones móviles.
Se debe crear un nuevo lanzamiento para que se apliquen los ajustes actualizados. Todo el contenido incluido en un lanzamiento debe estar disponible en Phrase Strings, que transmite traducciones directamente a la aplicación. Si el contenido no está presente, las traducciones no se entregarán.
Para aplicaciones móviles, OTA requiere integrar el Kit de Desarrollo de Software (SDK) relevante en la aplicación para recuperar traducciones de Phrase Strings en tiempo de ejecución.
Al iniciar una aplicación que implementa el SDK de iOS, Android, React Native o Flutter por primera vez en un dispositivo, se genera un identificador de dispositivo único y aleatorio. Este identificador rastrea a los usuarios activos durante un período de tiempo determinado. No se utiliza para realizar ningún otro tipo de seguimiento ni contiene información sobre el usuario o el dispositivo.
El número de solicitudes OTA y la cantidad de Usuarios Activos Mensuales (MAU) son limitados, dependiendo del plan de precios seleccionado.
MAU es el número de dispositivos únicos desde los cuales se solicitan traducciones. A cada dispositivo se le asigna un ID aleatorio. MAU se calcula en función del número de IDs únicos asignados en los últimos 30 días. Cada interacción con los servidores de Phrase se considera una solicitud.
Datos enviados con solicitudes OTA
El SDK se comunica con el servicio OTA para verificar actualizaciones e incluye los siguientes detalles con cada solicitud:
-
Identificador de dispositivo (por ejemplo. "F3AFCB10-80A2-84CB-94C0-27F5EF58876D". Único para esta aplicación y, por lo tanto, no permite rastrear un dispositivo específico.)
-
Versión de la aplicación (por ejemplo. "1.2.0")
-
Última actualización del archivo de traducción (por ejemplo. "1542187679")
-
Versión del SDK (por ejemplo. "1.0.0")
-
Localización (por ejemplo, "de-DE")
-
Formato de archivo (por ejemplo, "strings")
-
Cliente (por ejemplo, "ios")
-
Distribución ID (ID de la distribución)
-
Secreto del entorno (para distinguir entre desarrollo y producción)
Dominios utilizados por los SDKs:
Datacenter de la UE
-
ota.eu.phrase.com
-
cdn.eu.phrase.com
-
ota.phraseapp.com
-
cdn.phraseapp.com
Datacenter de EE. UU.
-
ota.us.phrase.com
-
cdn.us.phrase.com
Los SDKs de Phrase OTA están diseñados para garantizar que las aplicaciones sigan funcionando incluso si la API de OTA no está disponible. En tales casos, el SDK vuelve a las últimas traducciones obtenidas con éxito almacenadas en el dispositivo, o a las traducciones empaquetadas incluidas en el paquete de la aplicación. Esto previene errores o cadenas faltantes para los usuarios finales. Para garantizar una recuperación confiable, las traducciones empaquetadas deben mantenerse actualizadas con cada lanzamiento de la aplicación.
Las distribuciones son una configuración definida que determina cómo y dónde se entregan las actualizaciones OTA para una plataforma o proyecto específico.
Las plataformas objetivo se definen dentro de la distribución:
-
iOS
-
Android
-
Flutter
-
i18next
-
Rails
Es posible tener múltiples distribuciones, pero idealmente hay una distribución por proyecto. Si se utiliza una distribución para iOS y Android, los marcadores de posición para los dos formatos se convierten automáticamente.
Reversiones
Si se establecen reversiones de idioma en la configuración de idioma del proyecto al que está conectada la distribución, se mostrarán cadenas del idioma seleccionado si el idioma solicitado existe, pero la clave no está traducida.
Si se utiliza un idioma específico de un país (por ejemplo, en-GB), pero no forma parte de la versión, el sistema puede recurrir a una versión estándar (por ejemplo, en) de ese idioma si existe en el proyecto. Si el idioma solicitado no se encuentra en absoluto, se puede servir la localización predeterminada del proyecto en su lugar.
Las reversiones no funcionarán en claves vinculadas.
Crear una distribución
Para crear una distribución, sigue estos pasos:
-
Desde la caja de en la página de , haz clic en Configurar o en el número de configuraciones si ya existen algunas.
Se abre la página de y se muestran las configuraciones existentes.
-
Haz clic en Nueva distribución. Se abre la ventana de .
-
En la pestaña General, proporciona un , con el que se asocia la de la distribución, los requeridos y las requeridas.
-
Para las distribuciones de Android, haz clic en la pestaña Android para seleccionar la opción de formato que incluya cualquier traducción, incluidos los tags HTML en CDATA, si es necesario.
-
Después de seleccionar el proyecto para asociar con la distribución, la pestaña Programación se vuelve disponible. Si es necesario, usa esta pestaña para configurar lanzamientos OTA programados en la distribución.
-
-
En la pestaña Idiomas de respaldo, selecciona la configuración de respaldo específica de la distribución según sea necesario. Las opciones de respaldo se priorizan como se muestra en la lista.
-
Opcionalmente, haz clic en la pestaña Traducciones para seleccionar la opción de usar la última versión revisada de las traducciones. Habilita esta opción solo cuando trabajes con el flujo de trabajo de revisión avanzada.
-
Haz clic en Guardar.
Los detalles de la distribución se muestran con los IDs requeridos por los SDKs. Los detalles se pueden mostrar nuevamente haciendo clic en la distribución desde la página .
Para actualizar las traducciones, crea un nuevo lanzamiento dentro de la distribución. El estado actual del proyecto se exporta y se pone a disposición de los clientes conectados.
Para crear un lanzamiento, sigue estos pasos:
-
Desde la página Por el aire, haz clic en Agregar lanzamiento junto a la distribución requerida.
Se abre la ventana .
-
Proporciona una , la requerida, , y .
Si es necesario, ingresa etiquetas para incluir solo claves con etiquetas específicas en el lanzamiento.
-
Haz clic en Guardar.
El lanzamiento se agrega a la lista en la parte inferior de la página de detalles de la distribución.
Para configurar horarios recurrentes para la distribución, siga estos pasos:
-
En la página , haga clic en el icono de engranaje
junto a la distribución requerida.
Se muestra la ventana .
-
Seleccione la pestaña Programar lanzamiento y haga clic en .
Se muestran las opciones de programación de lanzamientos.
Nota
Las opciones de programación también están disponibles al crear una nueva distribución.
-
En el menú desplegable , elija la frecuencia de lanzamiento seleccionando una de las opciones disponibles:
-
-
Seleccione los días de la semana deseados para los lanzamientos programados.
-
-
Proporcione una hora y la relevante.
-
Si es necesario, seleccione , y para los lanzamientos programados.
-
El campo se muestra solo si la ramificación está habilitada en el proyecto. Seleccionar una rama actualiza la lista de locales e idiomas.
-
-
Opcionalmente, especifique las versiones de la aplicación en los campos y .
Deje en blanco para aplicar el lanzamiento programado a todas las versiones de la aplicación.
-
Haz clic en Guardar.
La distribución se actualiza con la información de programación de lanzamientos.
Deshabilitar la programación detiene el lanzamiento automático de la distribución, pero se guardan los ajustes configurados.
Integrar el SDK móvil o la biblioteca web apropiados permite actualizar las traducciones con un solo clic, pero también proporciona métricas para medir el uso. Los informes del SDK móvil y de la biblioteca web ofrecen información valiosa sobre los usuarios activos de la aplicación y sus idiomas de la aplicación. Este conjunto de informes está disponible para cada distribución, y los datos se actualizan dos veces al día.
Se proporcionan informes sobre el número de usuarios activos, solicitudes generales, solicitudes por idioma, solicitudes por plataforma y para idiomas de dispositivos no proporcionados.
Los informes para cada distribución se acceden a través del icono en la página .
La documentación técnica para integrar los SDK OTA está disponible en el archivo README de cada repositorio de proyecto: