Después de obtener la imagen de UIImagePickerController, UIImageView gira la imagen para iPhone 5

Estoy usando UIImagePickerController para capturar imágenes usando la cámara. La orientación admitida para mi aplicación es Retrato. Veo un comportamiento extraño en el iPhone 5. Estoy usando Xcode 7 y Swift 2.0. La versión del sistema operativo iPhone 5 es 8.4. El objetivo de implementación es 8.0 para mi aplicación.

Los problemas son. 1. Para el iPhone 5, después de capturar la imagen, la imagen se muestra en el modo respectivo en el que se captura la imagen. Pero después de presionar la opción estándar 'Usar foto' y cuando la imagen se muestra en UIImageView, la imagen se gira automáticamente hacia la izquierda. No se porque. Si elijo la imagen de la biblioteca de fotos, la imagen no se gira. No quiero que la imagen se rote. Vi una publicación similar con una mejor explicación y una imagen real, pero no fue respondida.UIImageView gira la imagen con el simulador de retina 4 para iPhone pero no con el simulador de retina 3.5 / regular Probé casi todas las soluciones rápidas de esta publicación:Orientación de la imagen del resultado iOS UIImagePickerController después de la carga y otra publicación también, pero nada parece estar funcionando. Usé shouldAutorotate (), sFunc_imageFixOrientation () y agregué la extensión de esta publicación.

Además, para ambos dispositivos, después de presionar la opción 'Usar foto', se tarda unos 10 segundos en cargar la imagen. ¿Se puede hacer más rápido?

Aquí está mi código:

func openCamera () {

    if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.Camera) {
        dispatch_async(dispatch_get_main_queue(), {
            let imagePicker = UIImagePickerController();
            imagePicker.sourceType = UIImagePickerControllerSourceType.Camera;
            imagePicker.allowsEditing = false;
            imagePicker.delegate = self;
            imagePicker.modalPresentationStyle = .FormSheet
            self.presentViewController(imagePicker, animated: true, completion: nil);
        });

    }
}

func openGallary() {
    if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.PhotoLibrary) {
        let imagePicker = UIImagePickerController()
        imagePicker.delegate = self
        imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary;
        imagePicker.allowsEditing = true
        self.presentViewController(imagePicker, animated: true, completion: nil)
    }
}

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
    profileImage?.image =   image
    self.dismissViewControllerAnimated(true, completion: nil);
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta