Docs Menu
Docs Home
/ /
Recursos para desarrolladores de aplicaciones

Sincronizar datos en una aplicación cliente con Atlas y otros dispositivos

Si tiene una aplicación móvil o cliente que usa Realm Database y desea sincronizar sus datos con otros dispositivos y respaldarlos en MongoDB Atlas, puede hacerlo con Device Sync. Siga estos pasos para comenzar:

1

La aplicación App Services es la puerta de enlace que permite que su dispositivo cliente se conecte a MongoDB Atlas. Al crear una aplicación, le asigna un nombre, la vincula a un clúster de Atlas y especifica el modelo y la región de implementación más adecuados para su aplicación.

Para saber cómo crear una aplicación de App Services,consulte Crear una aplicación.

2

Device Sync es el servicio que gestiona la sincronización de datos en Atlas y entre tus dispositivos cliente. Device Sync, junto con los SDK de Realm, gestiona automáticamente la conectividad de red, la resolución de conflictos, la autenticación de usuarios, y los permisos de usuario y el acceso a los datos.

Al configurar Device Sync, se especifica la fuente de datos a la que pueden acceder los dispositivos cliente, así como los permisos que determinan qué datos puede leer y escribir un usuario.

Puede configurar la Sincronización de Dispositivos mediante la interfaz de usuario de Atlas, la interfaz de línea de comandos de los Servicios de Aplicaciones de Atlas o la API de administración de los Servicios de Aplicaciones. La primera vez que configure la Sincronización de Dispositivos, puede resultarle útil usar la interfaz de usuario de Atlas, ya que proporciona enlaces e información sobre diversas configuraciones y opciones.

3

Los usuarios de su cliente deben autenticarse para acceder a los datos sincronizados. App Services ofrece varios proveedores de autenticación para que sus usuarios puedan autenticarse. Configure uno o más de estos proveedores para habilitar la autenticación en su aplicación cliente.

Puede configurar proveedores de autenticación dentro de la interfaz de usuario de la aplicación App Services seleccionando Authentication En el menú de navegación izquierdo, haga clic en un proveedor para configurarlo. También puede configurar proveedores de autenticación editando la configuración de App Services con la interfaz de línea de comandos de Atlas App Services o API de administración de servicios de aplicaciones.

4

Cuando ya tienes una aplicación cliente que usa Realm base de datos, puedes utilizar tu Modelo de objeto Realm para generar el esquema de aplicación Services que asigna datos entre dispositivos cliente y Atlas. Puedes hacer esto activando el Modo de Desarrollo, una funcionalidad que lee los datos del Modelo de objeto desde datos sincronizados del realm y genera un esquema a partir de esos datos.

Para obtener más información sobre cómo generar un esquema de App Services a partir de su modelo de objetos de Realm, consulte: Crear un esquema de App Services a partir de un modelo de objetos de Realm.

Después de esto, ya tienes todo configurado en Atlas y puedes preparar tu aplicación cliente para sincronizar datos. Si ya tienes una aplicación cliente que conserva datos con Realm Database, solo necesitas añadir algunos elementos para sincronizarlos entre dispositivos y con Atlas.

1

En el código de la aplicación cliente, inicialice un cliente de aplicación para conectarlo al backend de App Services. Esto le permite usar funciones de App Services como la autenticación y abrir un dominio sincronizado.

2

El usuario de su aplicación cliente debe estar autenticado en el backend de App Services para acceder a los datos sincronizados. Agregue lógica a su aplicación cliente para registrar e iniciar sesión a los usuarios.

3

Una vez que tenga un usuario autenticado, puede abrir una instancia sincronizada de Realm Database para usarla para ese usuario.

Define una suscripción de consulta de Sincronización Flexible en el código de cliente para determinar qué datos sincronizar con la aplicación cliente. Sincronización de Dispositivos busca documentos de Atlas que coincidan con la consulta y que el usuario tenga permiso de lectura y escritura, y los sincroniza con el dispositivo cliente como objetos de Realm. Puedes agregar, eliminar o actualizar suscripciones de consulta de Sincronización Flexible para cambiar los documentos que se sincronizan con el dispositivo.

4

Si ya tiene datos de cliente, no puede agregar Device Sync directamente a un dominio no sincronizado. Debe copiar los datos del dominio no sincronizado al dominio sincronizado. Si no tiene datos de cliente, puede omitir este paso.

Algunos SDK ofrecen métodos que permiten hacer esto al abrir un reino. Sin embargo, muchos SDK de reinos no admiten actualmente el uso de estos métodos con la sincronización flexible.

Si su SDK no permite copiar un dominio local a un dominio de sincronización flexible, debe escribir la lógica para iterar sobre cada objeto del dominio no sincronizado y copiarlo al dominio sincronizado. Este proceso se realiza una sola vez. Después de copiar los datos, puede descartar el dominio no sincronizado y abrir solo el dominio sincronizado de ahora en adelante.

5

La sintaxis para leer, escribir y observar cambios en un dominio sincronizado es idéntica a la de los dominios no sincronizados. Mientras trabaja con datos locales, un subproceso en segundo plano integra, carga y descarga conjuntos de cambios de forma eficiente. Cuando un usuario con permisos de escritura realiza cambios en el dispositivo, los datos se conservan localmente. Si el usuario tiene conexión de red, los datos se sincronizan automáticamente con Atlas y otros dispositivos.

Volver

Sincronizar datos del Atlas con el cliente