Swift 3和EKEventStoreRequestAccessCompletionHandler抛出异常

Mot*_*oxX 0 eventkit swift swift3

我尝试使用以下代码请求访问日历:

EKEventStore().requestAccess(to: EKEntityType.event, completion: {
    (success: Bool, error: NSError!) in

    print("Got permission = \(success); error = \(error)")
 })
Run Code Online (Sandbox Code Playgroud)

Xcode想要添加,as! EKEventStoreRequestAccessCompletionHandler 因为它说

无法传达类型的值(Bool,NSError!)......".

但是当我添加此应用程序时,应用程序崩溃了EXC_BAD_INSTRUCTION,没有进一步的解释.这里有什么想法吗?

非常感谢

Nir*_*v D 6

在Swift 3中,您需要使用Error而不是NSError检查Apple文档以获取更多详细信息.

EKEventStore().requestAccess(to: EKEntityType.event, completion: {
    (success: Bool, error: Error?) in  

    print("Got permission = \(success); error = \(error)")

})
Run Code Online (Sandbox Code Playgroud)