问题
How to detect if iCloud account being used on a device changed?
A user signs out from Settings > iCloud and another user signs in his/her account.
How to detect this change when the app is opened?
回答1:
Just add an observer for the notification with name NSUbiquityIdentityDidChangeNotification
[[NSNotificationCenter defaultCenter]
addObserver: self
selector: @selector (iCloudAccountAvailabilityChanged:)
name: NSUbiquityIdentityDidChangeNotification
object: nil];
If a user signs out of iCloud, such as by turning off Documents & Data in Settings, the ubiquityIdentityToken method returns nil. To enable your app to detect when a user signs out and signs back in, register for changes in iCloud account availability. - Apple Documentation
http://developer.apple.com/library/mac/#documentation/General/Conceptual/iCloudDesignGuide/Chapters/iCloudFundametals.html
来源:https://stackoverflow.com/questions/15022073/how-to-detect-if-icloud-account-on-a-device-changed