1

In my application, I am using UIImagePickerController to take the photos, videos, choosing images from gallery and saving them in application document directory. If we launch camera and take picture/videos, app starts terminating without any crash log. For every launch of camera in the application, the RAM consuption is increased and after some time app gets terminated saying "Application terminated due to memory issue". I have observed this memory leak in XCode(10.1) and Instrument tool.

func takePhoto() {

    if UIImagePickerController.isSourceTypeAvailable(UIImagePickerController.SourceType.camera) {
        self.mediaType = .Photo
        let imagePicker = UIImagePickerController()
        imagePicker.delegate = self
        imagePicker.sourceType = UIImagePickerController.SourceType.camera
        imagePicker.allowsEditing = false
        imagePicker.hidesBarsOnTap = true
        imagePicker.isNavigationBarHidden = true;
        self.present(imagePicker, animated: true, completion: nil)
    }
}

func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
    // Local variable inserted by Swift 4.2 migrator.
      let info = convertFromUIImagePickerControllerInfoKeyDictionary(info)
      if let image = info[convertFromUIImagePickerControllerInfoKey(UIImagePickerController.InfoKey.originalImage)] {

                //Writing the image to document directory

      }
        picker.dismiss(animated: true, completion: nil)
}

// Helper function inserted by Swift 4.2 migrator.

  fileprivate func convertFromUIImagePickerControllerInfoKeyDictionary(_ input: [UIImagePickerController.InfoKey: Any]) -> [String: Any] {
        return Dictionary(uniqueKeysWithValues: input.map {key, value in (key.rawValue, value)})
    }

// Helper function inserted by Swift 4.2 migrator.

fileprivate func convertFromUIImagePickerControllerInfoKey(_ input: UIImagePickerController.InfoKey) -> String {
    return input.rawValue
}

XCode 10.1 Swift 4.2 iOS version - 10.2.1 Devices RAM - 1GB/2GB Devices - iPad Pro, iPad Mini Memoy - 16GB, 64GB, 32GB

Could you please help on this and suggest a better solution

Thanks,

Sudhakar Tharigoppula
  • 2,857
  • 3
  • 16
  • 17

1 Answers1

0

I am having the same issue and landed here. Did you solve the issue yet?

someone seems to have this long time ago. I tried and it seems to help:

App Terminated due to Memory Pressure when using camera in iOS 7

Sean
  • 2,967
  • 2
  • 29
  • 39