Контроллер UIImagePicker не запрашивает разрешение даже при записи в plist - PullRequest
0 голосов
/ 21 сентября 2018

У меня проблемы с UIImagePickerController.Я хочу иметь возможность открыть библиотеку фотографий и выбрать изображение, когда я получаю следующую ошибку

[discovery] errors encountered while discovering extensions: Error Domain=PlugInKit Code=13 "query cancelled" UserInfo={NSLocalizedDescription=query cancelled}`

Я предположил, что это, вероятно, ошибка разрешений, поскольку я по ошибке не добавил строку вМой список для доступа к фотографиям, поэтому я добавил запись для доступа к библиотеке фотографий:

Privacy - Photo library Usage Description с типом string и значением, установленным на photo use

, и все равно я не получаю подсказку дляразрешение на доступ к фотографиям, когда я пытаюсь получить к ним доступ.

Чтобы свести к минимуму что-либо, что вызывает проблемы, я создал новый проект, в котором он просто имеет один контроллер вида, а приведенная выше запись в списке приведена ниже и показывает единственный код вэтот класс

class ViewController: UIViewController, UINavigationControllerDelegate, UIImagePickerControllerDelegate
{
    var mImagePicker:UIImagePickerController?

    override func viewDidLoad()
    {
        super.viewDidLoad()
       // Do any additional setup after loading the view, typically from a nib.
    }

    @IBAction func tapped(_ sender: Any)
    {
        // Pick an image from the photo library
        if UIImagePickerController.isSourceTypeAvailable(.photoLibrary)
        {
            mImagePicker = UIImagePickerController()
            mImagePicker!.delegate = self
            mImagePicker!.sourceType = .photoLibrary;
            mImagePicker!.allowsEditing = false
            self.present(mImagePicker!, animated: true, completion: nil)
        }
    }
}

когда я нажимаю кнопку, я не вижу запроса на разрешение, просто появляется библиотека фотографий, и когда я выбираю фотографию, я получаю ошибку, показанную выше?я что-то упускаю здесь?

Я использую iOS 12 на iPhone X и Xcode 10.0 на последней версии бета-версии Mojave

1 Ответ

0 голосов
/ 21 сентября 2018

На самом деле вам не нужно разрешение, если вы просто получаете доступ к фотографиям с помощью UIImagePickerController из iOS 11. Разрешение требуется, если вы используете AVFoundation или Photos framework.

По моему опыту,iOS регистрирует те ошибки, которые мы можем иногда игнорировать, и я думаю, что вы можете игнорировать сообщения об ошибках на этот раз.

...