我想知道我们应该在 swift 3.0 中使用哪个委托(delegate)函数而不是:
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void)
用于处理通知,因为此委托(delegate)函数已弃用。我也检查了这个链接: UILocalNotification is deprecated in iOS10但没有找到接收委托(delegate)。 如果我使用相同的委托(delegate)函数,委托(delegate)不会被调用。
谢谢。
最佳答案
我觉得你的案例有误会UILocalNotification
到目前为止已弃用(正如您在问题中已经提到的“UILocalNotification is deprecated in iOS10 ”),这就是您要问的:
UILocalNotification receiving function deprecated in iOS10 (Swift 3.0)
但是方法:userNotificationCenter(_:didReceive:withCompletionHandler:)
与 UILocalNotification
没有任何关系,相反,它与 UserNotifications 有关框架,确实支持 iOS 10 - 如其文档中所述 -:
所以基本上,您应该使用 UserNotification 而不是 -deprecated- UILocalNotification,因此:
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void)
在 iOS 10 上应该可以正常工作。
关于ios - UILocalNotification 接收函数在 iOS10 (Swift 3.0) 中弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48679958/