Menu Docs

Página inicial do DocsServiços Atlas App

Primeiros passos com o Atlas Device Sync

Nesta página

  • Antes de começar
  • Configurar seu modelo de dados
  • Escolha um SDK
  • Definir modelo de dados
  • Definir padrões de acesso aos dados
  • Definir regras de acesso aos dados
  • Habilitar a sincronização
  • Otimizar o uso do Sync
  • Criar queries no seu aplicativo de cliente

Para sincronizar dados entre dispositivos, habilite o Device Sync no seu aplicativo e, em seguida, use os métodos e as propriedades relacionados à sincronização nos SDKs.

Dica

Confira o tutorial

Se você preferir aprender por exemplo, confira o tutorial do Atlas App Services, que descreve como criar um aplicativo de lista de tarefas sincronizado com clientes para plataformas comuns compatíveis com o App Services.

Realm é um banco de dados de objetos otimizado para casos de uso móveis. Realm SDKs, disponíveis em vários idiomas e plataformas, incluem tudo o que você precisa para trabalhar com "domínios" sincronizados no código do cliente. Você pode usar vários SDKs para trabalhar com o mesmo conjunto de dados sincronizados entre dispositivos e plataformas.

Este guia se concentra em configurar a sincronização com um SDK. Para obter documentação detalhada que inclui detalhes sobre como instalar e usar os SDKs do Realm de forma mais geral, confira os documentos do SDK:

Observação

O Realm Web SDK não suporta atualmente o Realm Database ou Atlas Device Sync. No entanto, você pode executar query dos mesmos dados em um cluster do Atlas usando o MongoDB Data Access.

Um domínio sincronizado usa modelos de objetos que você define para determinar o tipo de objetos no domínio. Além disso, o Sync exige um esquema de documento do lado do servidor para cada tipo de objeto sincronizado, de modo que o App Services possa traduzir e aplicar alterações entre domínios sincronizados e o MongoDB Atlas.

Para definir seus modelos de objeto sincronizados, faça um dos seguintes para cada tipo de objeto:

  • Sincronizar modelos de objetos de um SDK: no modo de desenvolvimento, o App Services gera um esquema de documento automaticamente para cada tipo de objeto sincronizado, e atribui esse esquema a uma collection no cluster vinculado com o mesmo nome do tipo de objeto. O modo de desenvolvimento permite configurar o modelo de dados sincronizados a partir de um aplicativo de cliente usando os mesmos modelos de objeto e código que você usa no aplicativo de produção. Isso é útil se você prefere uma abordagem que prioriza o cliente e usa modelos de objetos idiomáticos em sua linguagem de programação de preferência.

    Para obter instruções passo a passo de como ativar o modo de desenvolvimento, consulte Habilitar o modo de desenvolvimento.

  • Gerar modelos de objeto a partir de um esquema de documento: o App Services pode gerar automaticamente modelos de objeto específicos de idioma que você pode usar em seus aplicativos cliente. Os modelos gerados correspondem aos esquemas de documentos definidos para o cluster sincronizado da sua aplicação. Você pode definir esses esquemas manualmente ou o Atlas App Services pode amostrar dados existentes no cluster para criá-los automaticamente. Isso é útil se você preferir uma abordagem de servidor em primeiro lugar e/ou planeja criar aplicativos com vários SDKs.

    Para obter instruções passo a passo de como gerar seus modelos de objetos com base em esquemas de documento no servidor, consulte Gerar modelos de objetos SDK.

    Depois de ter os modelos de objetos gerados, você pode copiá-los diretamente no aplicativo cliente e usá-los da mesma forma que faria com qualquer objeto ou struct comum na linguagem de programação de sua preferência.

Depois de decidir sobre o modelo de dados do seu aplicativo, você pode definir um padrão de acesso aos dados e regras de acesso para os dados do seu aplicativo.

Os aplicativos cliente podem executar query dos campos de query de um documento para determinar quais objetos sincronizar. Em seguida, o App Services aplica regras e funções padrão para determinar se os usuários podem ler ou gravar os objetos que correspondem à query.

As regras de acesso a dados determinam quais dados sincronizar, bem como a capacidade de cada usuário de ler e gravar dados. As regras estão vinculadas ao modelo de dados do seu aplicativo.

Com o Flexible Sync, você especifica quais dados sincronizar por meio de queries de objetos correspondentes em um aplicativo cliente. Em seguida, o App Services avalia funções e regras para determinar quais desses objetos correspondentes um usuário pode ler e escrever.

Defina roles em collections específicas. As roles padrão fornecem permissões de leitura e gravação quando roles mais específicas não se aplicam. As roles padrão se aplicam a todas as collections que um aplicativo pode acessar, mas você pode restringir uma role a uma collection específica especificando o nome da collection.

Ao habilitar o Sync, você especifica como o cliente pode acessar dados em seu aplicativo. Para obter um passo a passo de como ativar a sincronização, consulte Configurar and habilitar o Atlas Device Sync.

O Device Sync sincroniza todos os dados de collections com um esquema definido no seu Atlas cluster. Se você não especificar um campo em seu esquema, o Device Sync não sincronizará esse campo com os clientes.

A sincronização armazena alguns dados de utilitários em seu cluster sincronizado para ajudar a sincronizar dados com clientes. O Device Sync tem otimizações integradas para reduzir a quantidade de dados de utilitários armazenados em clusters sincronizados. Se você quiser reduzir ainda mais a quantidade de dados de utilitários para se adequar ao seu caso de uso, consulte o guia Otimizar o uso do Device Sync.

Com o Flexible Sync habilitado, você pode criar queries a partir do aplicativo do cliente.

Os SDKs do Realm fornecem métodos para criar, atualizar e remover queries do aplicativo cliente. Os SDKs usam assinaturas para manter essas queries no lado do cliente. Por meio dessas assinaturas, seus aplicativos sincronizam objetos com o aplicativo de backend e podem observar e reagir a alterações.

Para criar queries a partir do aplicativo do cliente, consulte a documentação do Realm SDK:

Importante

O Flexible Sync ignora o agrupamento personalizado

A Flexible Sync ignora qualquer agrupamento personalizado que você possa ter configurado em uma collection do MongoDB no Atlas. Em vez disso, as coleções sincronizadas sempre usam o {locale: "simple"} ao avaliar assinaturas ou permissões de sincronização.

← Device SyncAtlas