Ich möchte Benachrichtigungen erhalten, wenn sich der Status des iCloud Accounts ändert.CKAccountChanged Benachrichtigungen nicht erhalten
melde ich mich also für diese Benachrichtigungen mit:
NotificationCenter.default.addObserver(self,
selector: #selector(iCloudAvailabilityDidChange),
name: .CKAccountChanged,
object: nil)
und erwarten, dass iCloudAvailabilityDidChange
entsprechend aufgerufen:
@objc func iCloudAvailabilityDidChange(_ notification: Notification) {
handleICloudAccountStatus()
}
diese Benachrichtigungen Um zu überprüfen, habe ich einen Haltepunkt in iCloudAvailabilityDidChange
, und die App laufen unter Xcode.
Ich dann Home
, öffnen Sie die Systemeinstellung App, und loggen Sie sich in einem iCloud-Konto oder loggen Sie sich aus.
Ich erwartete Xcode den Haltepunkt zu treffen, aber das ist nicht der Fall.
Was könnte falsch sein?
EDIT:
Vielleicht ist das Problem auf die folgenden Informationen in dem docs zu CKAccountChanged
verwendet ist, die ich nicht verstehe:
Die Benachrichtigung wird durch eine Instanz der Klasse CKContainer gesendet. Wenn keine Instanzen der Klasse vorhanden sind, werden keine Benachrichtigungen gesendet.
Was ich nicht verstehe ist, dass CKContainer.default()
immer definiert werden sollte.