例如,在他们的todo app example中,这是用于连接到服务器数据库的代码
SyncUser.logIn(with: .usernamePassword(username: username,password: password,register: false),server: URL(string: "http://127.0.0.1:9080")!) { user,error inguard let user = user else { fatalError(String(describing: error))}dispatchQueue.main.async { // Open Realm let configuration = Realm.Configuration( syncConfiguration: SyncConfiguration(user: user,realmURL: URL(string: "realm://127.0.0.1:9080/~/realmtasks")!) ) self.realm = try! Realm(configuration: configuration) // Show initial tasks func updateList() { if self.items.realm == nil,let List = self.realm.objects(TaskList.self).first { self.items = List.items } self.tableVIEw.reloadData() } updateList() // Notify us when Realm changes self.notificationToken = self.realm.addNotificationBlock { _ in updateList() }}}
当用户离线时,返回的用户变量为nil,并且您无法在服务器上使用已配置的域,但代码未显示如何从镜像本地数据库获取同步数据…是否必须手动每次用户上线时,将项目从在线数据库复制到手动创建的本地数据库?
解决方法 成功登录(或注册)用户后,它会缓存在设备的钥匙串中,您可以通过 currentUser属性检索它,或者如果您的应用支持多个用户 all,即使您处于离线状态也是如此.请注意,如果您呼叫用户注销,那么它将从钥匙串中删除,您必须在线并再次登录.
总结以上是内存溢出为你收集整理的swift – 领域移动平台,离线时如何连接?全部内容,希望文章能够帮你解决swift – 领域移动平台,离线时如何连接?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)