Docs 菜单

SyncConfiguration 类

io.realm.mongodb.sync.SyncConfiguration

SyncConfiguration用于设置可在使用MongoDB Realm 。

创建 SyncConfiguration 需要有效的 用户 。有关如何获取用户对象的详细信息,请参阅凭据App.loginAsync(Credentials, App.Callback)

下面是一个最小的SyncConfiguration

App app = new App("app-id");
User user = app.login(Credentials.anonymous());
SyncConfiguration config = SyncConfiguration.defaultConfiguration(user, "partition-value");
Realm realm = Realm.getInstance(config);

同步 Realm 仅支持可自动检测和执行的附加迁移,因此与普通 Realm 相比,无法访问以下构建器选项:

  • deleteRealmIfMigrationNeeded()

  • migration(Migration)

同步 Realm 通过使用Realm.getInstance(RealmConfiguration)创建 和Realm.getDefaultInstance() 就像普通的未同步 Realm 一样。

另请参阅:

  • Docs有关同步的更多信息,请参阅 。

修饰符和类型
类和描述

public static interface

public static final

修饰符和类型
方法和说明
User user,
ObjectId partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

User user,
Integer partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

User user,
Long partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

User user,
String partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

返回给定用户的默认Flexible Sync配置。

公共布尔值

public static RealmConfiguration

String canonicalPath
)

返回一个适用于打开只读、非同步Realm的RealmConfiguration ,以恢复任何待处理的更改。

public static RealmConfiguration

String canonicalPath,
byte[] encryptionKey,
)

返回一个适用于打开只读、非同步Realm的RealmConfiguration ,以恢复任何待处理的更改。

返回此SyncConfiguration的客户端重置处理程序。

返回此SyncConfiguration的错误处理程序。

返回具有初始数据的事务实例。

公共长整型

返回首次打开 Realm 时下载任何初始数据时定义的超时时间。

返回为此 Realm 配置的初始订阅处理程序。

public BsonValue

返回此 Realm 分区所依据的值。

public URI

返回与本地 Realm 同步的远程 MongoDB Realm 的服务器 URI。

public OsRealmConfig.SyncSessionStopPolicy

注意:仅供内部使用。

返回此SyncConfiguration的同步客户端重置策略。

public 字符串

返回与 Realm 对象服务器建立同步连接时使用的 url 前缀。

公共用户

返回用户。

公共整型

公共布尔值

返回此配置是否用于打开为Flexible Sync配置的 Realm。

公共布尔值

返回此配置是否用于打开为基于分区的同步配置的 Realm。

受保护的布尔值

受保护的布尔值

检查此配置定义的 Realm 文件是否已存在。

公共布尔值

如果在拥有该文件的用户注销后必须删除该Realm 文件,则返回true

公共布尔值

如果Realm在首次打开之前从远程服务器下载所有已知更改,则返回true

public 字符串

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

  • 从类io.realm.RealmConfiguration继承的方法: getRealmDirectorygetRealmFileNamegetEncryptionKeygetSchemaVersiongetMigrationshouldDeleteRealmIfMigrationNeededgetDurabilitygetSchemaMediatorgetInitialDataTransactionhasAssetFilegetAssetFilePathgetCompactOnLaunchCallbackgetRealmObjectClassesgetPathrealmExistsgetRxFactorygetFlowFactoryisReadOnlyisRecoveryConfigurationgetMaxNumberOfActiveVersionsisAllowWritesOnUiThreadisAllowQueriesOnUiThreadequalsgetInstancehashCodecreateSchemaMediatortoStringisSyncConfigurationforRecovery

User user,
ObjectId partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

参数

  • user - 用于访问Realm应用的用户。

  • partitionValue - 标识将同步的远程Realm的分区值。

返回:

给定用户和分区值的默认配置。

User user,
Integer partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

参数

  • user - 用于访问Realm应用的用户。

  • partitionValue - 标识将同步的远程Realm的分区值。

返回:

给定用户和分区值的默认配置。

User user,
Long partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

参数

  • user - 用于访问Realm应用的用户。

  • partitionValue - 标识将同步的远程Realm的分区值。

返回:

给定用户和分区值的默认配置。

User user,
String partitionValue
)

返回给定用户和分区值的默认基于分区的同步配置。

参数

  • user - 用于访问Realm应用的用户。

  • partitionValue - 标识将同步的远程Realm的分区值。

返回:

给定用户和分区值的默认配置。

User user
)

返回给定用户的默认Flexible Sync配置。

参数

  • user - 用于访问Realm应用的用户。

返回:

给定用户的默认Flexible Sync配置。

另请参阅:

  • {@link SubscriptionSet} 以了解有关Flexible Sync的更多信息。

public boolean equals (
)

覆盖

RealmConfiguration中的equals

String canonicalPath
)

返回一个适用于打开只读、非同步 Realm 的RealmConfiguration ,以恢复任何待处理的更改。 这在尝试打开备份/恢复 Realm 时(客户端重置后)非常有用。 注意:这将使用默认的 Realm 模块(由所有RealmModel组成),并假设不应使用加密。

参数

  • canonicalPath — 此配置定义的Realm 文件的绝对路径。

返回:

可离线使用的 RealmConfiguration

String canonicalPath,
byte[] encryptionKey,
)

返回一个适用于打开只读、非同步 Realm 的RealmConfiguration ,以恢复任何待处理的更改。 这在尝试打开备份/恢复 Realm 时(客户端重置后)非常有用。

参数

  • canonicalPath — 此配置定义的Realm 文件的绝对路径。

  • encryptionKey — 用于加密/解密Realm 文件的密钥。

  • modules — 如果指定,则会将Realm模式限制为所提供的模块。

返回:

可离线使用的 RealmConfiguration

返回此SyncConfiguration的客户端重置处理程序。

返回:

客户端重置处理程序。

返回此SyncConfiguration的错误处理程序。

返回:

错误处理程序。

返回具有初始数据的事务实例。

返回:

初始数据事务。

覆盖

RealmConfiguration中的getInitialDataTransaction

返回首次打开Realm时下载任何初始数据时定义的超时时间。该值仅在 shouldWaitForInitialRemoteData() 返回true 时适用。

返回:

Realm 在中止并抛出异常之前等待所有更改下载的时间。

另请参阅:

返回为此 Realm 配置的初始订阅处理程序。

返回:

用于配置该 Realm 初始订阅的处理程序。

public BsonValue getPartitionValue ()

返回此 Realm 分区所依据的值。 分区键是 MongoDB Realm 中定义的一个属性。 所有具有此值的属性的类都将同步到 Realm。

返回:

MongoDB Realm 用于将服务器端 MongoDB 数据库分区为可独立同步的 Realm 的值。

抛出异常

public URI getServerUrl ()

返回与本地 Realm 同步的远程 MongoDB Realm 的服务器 URI。

返回:

URI 标识与此本地Realm同步的MongoDB Realm 。

public OsRealmConfig.SyncSessionStopPolicy getSessionStopPolicy ()

注意:仅供内部使用。 可能会在没有警告的情况下发生更改。 关闭 Realm 后,返回该 Realm 的会话的停止策略。

返回:

Realm 关闭后会话使用的停止策略。

返回此SyncConfiguration的同步客户端重置策略。

返回:

同步客户端重置策略。

返回与 Realm 对象服务器建立同步连接时使用的 url 前缀。

public User getUser ()

返回用户。

返回:

用户。

public int hashCode ()

覆盖

RealmConfiguration中的hashCode

public boolean isFlexibleSyncConfiguration ()

返回此配置是否用于打开为Flexible Sync配置的 Realm。

返回:

如果此配置用于 Flexible Sync Realm,则为true ,否则为false

返回此配置是否用于打开为基于分区的同步配置的 Realm。

返回:

如果此配置用于基于分区的 Sync Realm,则为true ,否则为false

protected boolean isSyncConfiguration ()

覆盖

RealmConfiguration中的isSyncConfiguration

protected boolean realmExists ()

检查此配置定义的 Realm 文件是否已存在。警告: 此方法仅用于时间点检查。 除非受外部同步保护,否则其他线程或进程可能会在此方法返回后立即创建或删除 Realm 文件。

返回:

如果 Realm 文件存在,则为true ,否则为false

覆盖

RealmConfiguration中的realmExists

public boolean shouldDeleteRealmOnLogout ()

如果在拥有该文件的用户注销后必须删除该Realm 文件,则返回true

返回:

true如果在用户注销时必须删除Realm 文件。 如果允许保留文件,则为false

如果Realm在首次打开之前从远程服务器下载所有已知更改,则返回true

返回:

如果在打开 Realm 之前下载所有远程更改,则为true 。 如果可以立即打开 Realm,则为false

public String toString ()

覆盖

RealmConfiguration中的toString