Docs 菜单
Docs 主页
/ /
Atlas Device SDKs
/ / /

类同步

在此页面上

  • io.realm.mongodb.sync
  • 嵌套类摘要
  • 方法摘要
  • 继承方法
  • 方法详细信息
  • getAllSessions
  • getOrCreateSession
  • getSession
  • 重新连接
java.lang.Object
io.realm.mongodb.sync.Sync

同步管理器,用于处理本地 Realm 与远程Realm应用的同步。其主节点 (primary node in the replica set)角色是访问权限已同步Realm的SyncSession 。 打开同步Realm后,您可以访问权限SyncSession并执行同步相关操作,如下所示:

App app = new App("app-id");
User user = app.login(Credentials.anonymous());
SyncConfiguration syncConfiguration = new SyncConfiguration.Builder(user, "<partition value>")
.build();
Realm instance = Realm.getInstance(syncConfiguration);
SyncSession session = app.getSync().getSession(syncConfiguration);
instance.executeTransaction(realm -> {
realm.insert(...);
});
session.uploadAllLocalChanges();
instance.close();

提示

另请参阅:

修饰符和类型
类和描述

public static

修饰符和类型
方法和说明

公共同步 集合

获取所有已缓存SyncSession的集合。

公共同步SyncSession

获取给定 SyncConfiguration 的任何已缓存 SyncSession ,如果不存在,则创建一个新 SyncSession。

公共同步SyncSession

SyncConfiguration syncConfiguration
)

获取给定 SyncConfiguration 的已缓存 SyncSession ,如果尚不存在,则抛出异常。

public void

Realm 会自动检测设备何时在离线后恢复连接并恢复同步。

  • 从类 java.lang.Object 继承的方法 :getClasshashCodeequalsclonetoStringnotifynotifyAllwaitwaitwaitfinalize

public synchronized Collection getAllSessions ()

获取所有已缓存SyncSession的集合。

返回:

SyncSession的集合。

public synchronized SyncSession getOrCreateSession (
SyncConfiguration syncConfiguration
)

获取给定 SyncConfiguration 的任何已缓存 SyncSession,如果不存在,则创建一个新 SyncSession。注意:这主要供内部使用,请考虑改用 getSession(SyncConfiguration)。

参数

  • syncConfiguration - 同步Realm的配置对象。

返回:

指定 Realm 的SyncSession

抛出异常

public synchronized SyncSession getSession (
SyncConfiguration syncConfiguration
)

获取给定 SyncConfiguration 的已缓存 SyncSession ,如果尚不存在,则抛出异常。使用SyncConfiguration打开 Realm 后,应存在一个会话。

参数

  • syncConfiguration - 同步Realm的配置对象。

返回:

指定 Realm 的SyncSession

抛出异常

public void reconnect ()

Realm会自动检测设备何时在离线后获得连接并恢复同步。但是,由于其中一些检查是使用增量回退来执行的,因此在某些情况下,这不会立即发生。

在这些情况下,手动调用此方法可能会有好处,这将强制所有会话立即尝试重新连接,并重置它们用于增量退避的任何计时器。

后退

SubscriptionSet.UpdateCallback