iOS Swift领域同步问题

我使用这个configuration代码进行本地存储。

var configuration = Realm.Configuration.defaultConfiguration configuration.encryptionKey = getKey() as Data 

我使用这个configuration代码与服务器同步。

 let syncServerURL = URL(string: serverUrl + objectName!)! var configuration = Realm.Configuration.defaultConfiguration configuration.encryptionKey = getKey() as Data configuration.syncConfiguration = SyncConfiguration(user: SyncUser.current!, realmURL: syncServerURL) 

我创build一些没有同步的数据,它保存在本地。 但是,如果我打开同步(不同的configuration),以前创build的数据(本地)不同步到服务器? 如何同步已保存的数据?

领域由三个互斥的Realm.Configuration属性之一唯一引用:

  1. fileURL
  2. inMemoryIdentifier
  3. syncConfiguration

具有不同值的这些属性的领域configuration将涉及单独的领域。

所以你最初的Realm有一个fileURL值(对于其他两个属性nil ),而你的第二个Realm有一个syncConfiguration值(对于其他两个属性nil ),所以它们引用单独的领域。

如果您希望将数据从第一个(本地)领域复制到第二个(同步)领域,那么您可以使用Realm的API来读取对象和创build对象,就像使用其他数据一样。