3
Я реализуюUNUserNotificationCenterDelegate метод делегата «почти соответствует факультативное требование»
func userNotificationCenter(_ center: UNUserNotificationCenter,
didReceive response: UNNotificationResponse,
withCompletionHandler completionHandler:() -> Void) {
Но я получаю «почти соответствует факультативное требование» предупреждение от компилятора. Что случилось с моей декларацией? Я скопировал его прямо из документации!
скопирована с комментариями [здесь] (http://stackoverflow.com/questions/39395513/how-to-handle-usernotifications-actions-in-ios-10/39426419? noredirect = 1 # comment66238962_39426419): '@ escaping' означает« это закрытие может быть выполнено позже ». Компилятор может легко оптимизировать блокировки без экранирования, которые часто используются на карте, фильтре и т. Д., Swift 3 сделал это по умолчанию. Все обработчики завершения выполняются, когда какая-то задача завершается - позже, поэтому нам нужно аннотировать @escaping для всех обработчиков завершения в Swift 3 – Honey