成员
- "active":同步会话正在与 Atlas App Services 主动通信或尝试与 Atlas App Services 通信。 即使当前未连接,也可将会话视为活动会话。 要确定会话是否在线,请检查其连接状态。
- "inactive":由于用户注销或同步暂停,同步会话未尝试与 Atlas App Services 通信。
- "invalid":同步会话遇到不可恢复的错误,永久无效。创建新会话以继续同步。
获取构造相应 Realm 所使用的配置的同步部分。
类型:
object
获取会话的当前状态。 可以是:
类型:
string
获取此会话连接到的 Realm 对象服务器的 URL。
类型:
string
获取创建此会话所使用的 User。
类型:
User
方法
- callback
- 类型:
callback(newState, oldState)
使用以下参数调用:
newState
- 新的连接状态oldState
- 连接转换的状态。
- 方向
- 类型:
string
要注册的进度方向。 可以是:
download
- 报告下载进度upload
- 报告上传进度
- 模式
- 类型:
string
用于注册的进度通知模式。 可以是:
reportIndefinitely
- 注册将保持活动状态,直到取消注册回调forCurrentlyOutstandingWork
- 注册将一直有效,直到仅同步当前可传输的字节
- callback
- 类型:
callback(transferred, transferable)
使用以下参数调用:
transferred
- 当前已传输的字节数transferable
- 可传输的字节总数(已传输的字节数加上待传输的字节数)
- Realm.App.Sync.ConnectionState.Disconnected:与服务器的连接不可用。
- Realm.App.Sync.ConnectionState.Connecting:正在尝试连接到服务器。
- Realm.App.Sync.ConnectionState.Connected:与服务器的连接处于活动状态,可以同步数据。
- 超时
在拒绝 Promise 之前等待的最长时间(以毫秒为单位)。 如果未指定超时时间,该方法将永远等待。
- callback
- 类型:
callback(oldState, newState)
先前注册的状态回调。
- callback
- 类型:
callback(transferred, transferable)
先前注册的进度回调
- 超时
在拒绝 Promise 之前等待的最长时间(以毫秒为单位)。 如果未指定超时时间,该方法将永远等待。
在会话对象上注册连接通知。 这将收到有关 Realm 对象服务器的底层连接发生变化的通知。
参数:
在会话对象上注册进度通知回调
参数:
获取与服务器连接的当前状态。 多个会话可能会共享相同的底层连接。 在这种情况下,任何连接更改都会发送到所有会话。
可以为以下任一项:
仅当此方法返回Connected
且state()
返回Active
或Dying
时,数据才会与 Realm ObjectServer 同步。
此方法会返回一个 Promise,该 Promise 无法成功解析,直到所有已知的远程更改都已下载并应用于 Realm,或者达到指定的超时时间(后一种情况将被拒绝)。 如果该方法超时,下载仍将在背景继续。
在打开 Realm 之前无法调用此方法。
参数:
true
如果会话当前处于活动状态并连接到服务器,则返回 ,否则返回false
。
暂停同步会话。
此方法是异步方法,因此为了知道会话何时开始,您需要使用addConnectionNotification
添加连接通知。
此方法是幂等的,因此如果会话已暂停,则该方法不会执行任何操作。
取消注册之前使用 addStateNotification 注册的状态通知回调。使用同一回调多次调用该函数将被忽略。
参数:
取消注册之前使用 addProgressNotification 注册的进度通知回调。使用同一回调多次调用该函数将被忽略。
参数:
恢复已暂停的同步会话。
此方法是异步方法,因此为了知道会话何时开始,您需要使用addConnectionNotification
添加连接通知。
此方法是幂等的,因此如果会话已启动,则此方法不会执行任何操作。
此方法返回一个无法成功解析的 Promise,直到所有已知的本地更改都已上传到服务器或达到指定的超时时间(在这种情况下,该方法将被拒绝)。 如果该方法超时,上传仍将在背景继续。
在打开 Realm 之前无法调用此方法。