Я надеюсь, что кто-то может направить меня ... Я знаю, что Swift 2.0/Xcode 7 все еще в бета-версии, но мне нужно преобразовать код ... Вот мой код ...RemoteNotification Dict изменился, и CKNotification Dict отличается в настоящее время
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
let notification:CKNotification = CKNotification(fromRemoteNotificationDictionary: userInfo)
//application.applicationIconBadgeNumber = 0
if (notification.notificationType == CKNotificationType.Query) {
let queryNotification = notification as! CKQueryNotification
let recordID = queryNotification.recordID
receivedRecord = recordID
NSNotificationCenter.defaultCenter().postNotificationName("updateDatabase", object: nil)
}
}
Таким образом, ожидаемый Dict для CKNotification изменился на [String: NSObject] -> до этого был [NSObject: AnyObject], которая соответствовала возвращенному Словарю! и вернулся Dict из функции (didReceiveRemoteNotification) является: [NSObject: AnyObject]
Взятые из Xcode 7 -> общественное удобство инициализации (fromRemoteNotificationDictionary notificationDictionary: [String: NSObject])
Взятые из Xcode 6.4 -> удобство init! (fromRemoteNotificationDictionary notificationDictionary: [NSObject: AnyObject]!)
Итак, мой вопрос в том, как я могу преобразовать это или пропустить что-то очевидное? Может это ошибка?
Спасибо за любую помощь руководства/...
Мой наконечник для обновления методов, чья подпись изменилась: не изменяющие один у вас на месте, вместо того, начало набрав вызов метода на другой строке, и Xcode автоматически предложит новую подпись; то вам просто нужно адаптироваться и редактировать. – Moritz
Я пробовал это, но в этом случае не было предложения от Xcode, я уже много пробовал и спрашивал, был ли последний вариант .... –