加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

swift – 领域移动平台,离线时如何连接?

发布时间:2020-12-14 04:38:12 所属栏目:百科 来源:网络整理
导读:新领域移动平台通过离线支持进行广告宣传,但是大多数教程都没有显示示例中的工作方式…… 例如,在他们的todo app example中,这是用于连接到服务器数据库的代码 SyncUser.logIn(with: .usernamePassword(username: username,password: password,register: fal
新领域移动平台通过离线支持进行广告宣传,但是大多数教程都没有显示示例中的工作方式……

例如,在他们的todo app example中,这是用于连接到服务器数据库的代码

SyncUser.logIn(with: .usernamePassword(username: username,password: password,register: false),server: URL(string: "http://127.0.0.1:9080")!) { user,error in
guard 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,即使您处于离线状态也是如此.

请注意,如果您呼叫用户注销,那么它将从钥匙串中删除,您必须在线并再次登录.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读