Realm对象服务器创建DB和ROS但不同步
我在AWS(RHAT)上设置了一个Realm对象服务器,它似乎工作正常。我可以查看仪表板,告诉我有多少个连接,以及在端口9080上打开了多少个领域。我的代码在设备上正常工作,更新发生在设备领域。但是我没有看到ROS领域有什么变化。我可能会得到一些非常基本的错误,但我不知道是什么。Realm对象服务器创建DB和ROS但不同步
func setupRealm() {
// Authenticating the User
let username = "exampleuser"
let password = "examplepassword"
SyncUser.logInWithCredentials(SyncCredentials.usernamePassword(username, password: password), authServerURL: NSURL(string: "http://example.com:9080")!, onCompletion:
{ user, error in
if let user = user {
// Opening a remote Realm
let realmURL = NSURL(string: "realm://example.com:9080/~/VWF3")!
let config = Realm.Configuration(syncConfiguration: SyncConfiguration(user: user, realmURL: realmURL))
let realm = try! Realm(configuration: config)
// Any changes made to this Realm will be synced across all devices!
} else if let error = error {
// handle error
}
})
}
我从ViewDidLoad调用setupRealm()。
我的开发人员需要能够看到ROS领域的变化,以确保所有工作正常,但所有那些是单用户领域,表结构是准确的,零数据。
我检查了服务器上的日志文件,没有什么突出的。
马特
你需要确保你仍然指的是特定Realm
(和它同步配置)做你写的时候。如果您尝试在登录后尝试写let realm = try! Realm()
,您仍然会引用默认Realm,该默认Realm未同步。
如果您打算让您的整个应用程序同步,您可以设置特定的Configuration
作为默认域的一个:
if let user = user {
// Opening a remote Realm
let realmURL = NSURL(string: "realm://example.com:9080/~/VWF3")!
let config = Realm.Configuration(syncConfiguration: SyncConfiguration(user: user, realmURL: realmURL))
Realm.Configuration.defaultConfiguration = configuration
// All calls to `Realm()` will now use this configuration
}
否则,你永远可以产生当你需要它的配置(或者具有全球常量类,可以为你管理它)。
let realmURL = NSURL(string: "realm://example.com:9080/~/VWF3")!
let configuration = Realm.Configuration()
configuration.syncConfiguration = SyncConfiguration(user: SyncUser.current, realmURL: realmURL))
let realm = try! Realm(configuration: configuration)
TiM,谢谢。从字面上看,现在就要开始着陆了。我会尽量在今晚进行扩充,一旦确认有效,请接受您的回答。听起来就像我缺少的基本片段。谢谢。 –
TiM我们仍在努力让所有工作都能正常进行,但我可以看到您在控制台中的更改,我们正在与ROS进行同步。无法通过连接到ROS来查看它,但我认为这是一个单独的问题。已检查为正确的答案。谢谢。 –
谢谢@TiM。有用。 – Jamil
这发生在我身上时,用户名是不是在电子邮件地址 – EpicPandaForce
的格式在我的代码在后我取代实际的用户名与例如一个之前。我的实际用户名是电子邮件地址。那是你做的唯一改变吗? –
是的,而不是'kecske'我做了'kecske @ xyz.com'然后它神奇地工作 – EpicPandaForce