Как получить URL сохраненного изображения в Swift 3.0

#ios #swift

#iOS #swift

Вопрос:

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

 func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {

        let photo = info[UIImagePickerControllerOriginalImage] as? UIImage
        self.photoImageView.image = photo

        UIImageWriteToSavedPhotosAlbum(photo!, self, #selector(image(_:didFinishSavingWithError:contextInfo:)), nil)

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



    func image(_ image: UIImage, didFinishSavingWithError error: NSError?, contextInfo: UnsafeRawPointer) {



    }
  

Комментарии:

1. Почему вы хотите получить доступ к пути при сохранении с ошибкой?

2. Я хочу получить к нему доступ в любом месте!

3. Вы можете получить доступ, когда выбираете изображение в didFinishPickingMediaWithInfo , и можете сохранить в какой-либо из ваших переменных. И я думаю, это можно сделать только тогда, когда вы снова откроете сохраненное изображение и получите путь в didFinishPickingMediaWithInfo

4. В принципе, я хочу взять изображение, а затем отправить URL изображения на другой экран, на котором может отображаться изображение. Я могу отправить UIImage и на другой экран, что может быть решением, которое я выберу.

5. Он не будет указывать путь AFAIK. Вы можете использовать Photo Framework для получения всех изображений и URL-адресов, но это потребует много работы. Вы сохраняете как в галерее, так и в каталоге DD, а затем используете его

Ответ №1:

Насколько я знаю, Apple не предоставляет API для выбора любого типа файла, как в Android, с использованием файлового менеджера. Если вы хотите открыть изображение в приложении, вам нужно открыть альбомы и выбрать необходимые изображения. Если вы по-прежнему хотите использовать концепцию файлового менеджера в виде папок, вложенных папок и файлов на своем устройстве, вам придется использовать хранилище iCloud, поскольку оно предоставляет вышеупомянутую систему каталогов, которую вы хотите иметь.