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

How i can check if user switched iCloud account?

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

其他问题:

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

中添加当前数据

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

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

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