gpt4 book ai didi

ios - CloudKit : How to handle account changes with local persistent store?

转载 作者:可可西里 更新时间:2023-11-01 05:51:35 27 4
gpt4 key购买 nike

在我的应用程序中,我必须维护一个与云工具包私有(private)数据库同步的本地持久存储。所以我只想知道如何处理可能发生的帐户更改。

我的困惑如下:假设一组记录现在属于用户 A,如果用户 B 登录到同一部手机,我可以执行以下两件事:

  1. 忽略用户并让数据也同步到 B 帐户,但这样 A 的数据也会同步到 B 的私有(private)帐户。在这里,记录更改标签和所有内容都变得有点困惑,因为我将 CKRecord 编码字段保存到数据库中。

  2. 我可以维护一个用户表并将每条记录链接到登录的用户,这样用户数据就会分开。那么我应该维护一个用户字段以及所有记录吗?

除了以上两点,如何最好地处理这个问题。

最佳答案

当然,在您的本地持久性存储中,您可以添加用户 ID 来个性化所有记录。另一种机制是删除所有本地数据并在检测到更改时获取用户数据。如果您想将用户数据保存在设备上,您还可以为每个用户创建单独的数据存储。

您可以通过在您的应用委托(delegate)或 Root View Controller 中添加以下代码来检测更改的登录:

NSNotificationCenter.defaultCenter().addObserverForName(NSUbiquityIdentityDidChangeNotification, object: nil, queue: nil) { _ in
/// remove local data and fetch user data
}

您还应该刷新内存中所有与用户相关的数据并刷新加载的 View 。

关于ios - CloudKit : How to handle account changes with local persistent store?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32985913/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com