Получение URL-адреса UIImage, выбранного из UIImagePickerController
Я пытаюсь предоставить пользователю выбор изображения из библиотеки фотографий. Таким образом я используюUIImagePickerController
для выбора. Но здесь возникает проблема с получением его начального URL в файловой системе (мне это нужно дляCKAsset
).
Мой код
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) {
let imageURL = info[UIImagePickerControllerReferenceURL] as NSURL
let path = imageURL.path!
let imageName = path.lastPathComponent
let paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
let documentDirectory = paths.first as String!
let localPath = documentDirectory + "/" + imageName
let imageData = NSData(contentsOfFile: localPath)!
let image = UIImage(data: imageData)!
picker.dismissViewControllerAnimated(true, completion: nil)
}
URL изображения это немного загадочно. Он описывает URL-адрес актива, но не один в файловой системе. И это выглядит так:assets-library://asset/asset.JPG?id=B6C0A21C-07C3-493D-8B44-3BA4C9981C25&ext=JPG
.
Согласно этой логикедорожка является/asset.JPG
гдеasset.JPG
это имя изображения.
Затем я захожу в папку «Документы» и пытаюсь найти там файл с путем:
/Users/Eugene/Library/Developer/CoreSimulator/Devices/3C5E9A23-8220-4B37-BD14-F1E42EEC2C7C/data/Containers/Data/Application/20EBAAE2-6C6F-4651-A48F-16A222CCB3A2/Documents/asset.JPG
Также загадочно, но, похоже, это реальный путь для несуществующего изображения ... Изображение с таким путем не найдено. И это меня тошнит.
Нужно ли сохранять изображение с самого начала? Или есть другой путь?
Я просмотрел несколько уроков, используяAssetsLibrary API, но я не нашел ничего полезного для решения моей проблемы. Заранее спасибо!