This is how I get an NSURL
:
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
if let referenceUrl = info[UIImagePickerControllerReferenceURL] as? NSURL {
//access the file name
}
}
It was using ALAssetsLibrary
:
let assetsLibrary = ALAssetsLibrary()
assetsLibrary.assetForURL(referenceUrl, resultBlock: { asset in
let filename = asset.defaultRepresentation().filename()
}, failureBlock: nil)
but since iOS 9 it is deprecated.