我如何检查用户是不是切换了 iCloud 帐户?

Posted

技术标签:

【中文标题】我如何检查用户是不是切换了 iCloud 帐户?【英文标题】:How i can check if user switched iCloud account?我如何检查用户是否切换了 iCloud 帐户? 【发布时间】:2017-10-17 14:39:42 【问题描述】:

我在 CoreData 和 iCloud(CloudKit) 之间进行同步。我如何检查用户是否切换了 iCloud 帐户?

其他问题:

用户通过 iCloud 帐户“A”使用我的应用程序。他补充了数据。所有数据都将复制到 CKContainer "A" 中。 如果用户将在 iCloud 帐户“B”上切换帐户。我将在新的 CKContainer "B" 中添加当前数据。

但是如果用户返回 iCloud 帐户“A”,我需要将当前数据从 CKContainer“B”添加到 CKContainer“A”而不重复。如何解决问题??

【问题讨论】:

【参考方案1】:

在您的应用中为Notification.Name.CKAccountChanged 添加一个观察者,然后清除本地数据并再次从 iCloud 拉取。

NotificationCenter.default.addObserver(forName: .CKAccountChanged, object: self, queue: nil)  notification in
     ...

【讨论】:

以上是关于我如何检查用户是不是切换了 iCloud 帐户?的主要内容,如果未能解决你的问题,请参考以下文章

切换 icloud 帐户时创建持久存储时应用程序崩溃

如何将数据存储到开发者 icloud 帐户

从 iCloud 帐户访问用户个人资料图片

在 iCloud 上备份文档目录而不同步

如何检查 iCloud 中是不是有内容?核心数据

如何检查用户是不是有gmail帐户