¿Cómo agregar un dispositivo de input para la captura de session en Swift2 y Xcode7 beta?

Estoy siguiendo este tutorial para hacer una aplicación de camera, pero el tutorial está en Swift y estoy usando Xcode 7 beta y Swift2.

http://jamesonquave.com/blog/taking-control-of-the-iphone-camera-in-ios-8-with-swift-part-1/

Escuche que Swift2 tiene un método diferente de event handling errores ahora, así que supongo que esta parte del código debe cambiarse. Pero no estoy seguro de cómo hacerlo. Puede alguien ayudarme con esto? ¡Gracias!

var err : NSError? = nil captureSession.addInput(AVCaptureDeviceInput(device: captureDevice, error: &err)) if err != nil { println("error: \(err?.localizedDescription)") } 

Para get el código que envió para que coincida con los nuevos requisitos de event handling errores en swift 2, debe replace sus líneas de código con lo siguiente:

 var err : NSError? = nil do { let input = try AVCaptureDeviceInput(device: captureDevice) captureSession.addInput(input) } catch _ { print("error: \(err?.localizedDescription)") } 

La razón de este cambio es que Apple ha cambiado la forma en que necesita manejar los errores para hacer que la encoding sea less propensa a errores. Ahora necesita tener una sentencia catch para cualquier llamada que arroje un error. La llamada que podría lanzar y error debe estar en la instrucción do y el event handling errores debe encontrarse en la instrucción catch. Hay un poco más de detalle sobre la razón de este cambio en el siguiente enlace:

https://www.hackingwithswift.com/new-syntax-swift-2-error-handling-try-catch

Explicación del nuevo event handling errores de Swift – Manejo de errores en Swift-Language

 let captureSession = AVCaptureSession() let captureDevice: AVCaptureDevice do { let input = try AVCaptureDeviceInput(device: captureDevice) captureSession.addInput(input) }