我希望有人能指导我...我知道Swift 2.0/ Xcode 7还在测试版,但我需要转换我的代码...这是我的代码。
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)
}
}因此,CKNotification的预期Dict已更改为String:NSObject ->之前是NSObject:AnyObject,这符合返回的Dict!函数(DidReceiveRemoteNotification)返回的字典是: NSObject : AnyObject
摘自Xcode7 ->公共便利初始化(fromRemoteNotificationDictionary notificationDictionary: String : NSObject)
摘自Xcode6.4 ->便捷初始化!(fromRemoteNotificationDictionary notificationDictionary: NSObject : AnyObject!)
所以,我的问题是,我如何转换它,或者我遗漏了一些明显的东西?这可能是个bug吗?
感谢您的指导/帮助...
发布于 2016-01-26 23:20:26
执行以下操作:
if let userInfo = userInfo as? [String: NSObject] {
let notification = CKNotification(fromRemoteNotificationDictionary: userInfo)
...
...
}https://stackoverflow.com/questions/32201646
复制相似问题