3
我试图抓取通过imagePickerController选择的图像的文件路径,以便将文件上传到Firebase存储。从UIImagePickerController获取NSURL
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
mediaUploadView.image = info[UIImagePickerControllerOriginalImage] as? UIImage
let localUrl: NSURL = (info[UIImagePickerControllerReferenceURL] as! NSURL)
print(localUrl)
let localFile: NSURL = localUrl
let mediaRef = storageRef.child("media")
let uploadTask = mediaRef.putFile(localUrl, metadata: nil) { metadata, error in
if (error != nil) {
} else {
let downloadURL = metadata!.downloadURL
}
}
self.dismissViewControllerAnimated(true, completion: nil)
}
输出写着:
assets-library://asset/asset.JPG?id=C224DA06-6B7B-4BE2-8F5E-2EC7BC8B0526&ext=JPG
Body file is unreachable: /asset.JPG
Error Domain=NSCocoaErrorDomain Code=4 "The file doesn’t exist."
它抓住了我认为是NSURL,但随后无法找到它上传。
我已经试图跟随堆栈“How do I get Image reference and upload image to Firebase?”上的这个类似的问题,但输出然后简单地返回零。 任何帮助将是伟大的,谢谢!
感谢您的回复Sharud!花了我一秒拿到它,但现在它的工作!我一直试图获得这个近5天,所以我甚至不能告诉你我有多兴奋。再次,谢谢你!巨大的帮助! – BriceSwift
耶!很高兴我能帮上忙。你让我获得了50的声望,所以我现在可以评论:)所以我们互相帮助了哈哈。无论如何,最初的'localURL'是Photos App资源的一个网址。那么你需要把它作为一个资产url来获取。永远不能完全弄清楚为什么我不得不通过编辑来请求它,但这是我能够实现它的唯一方法。 –
很高兴我能帮助你太哈哈!我很欣赏这个解释,我对编码很陌生,所以很多东西都在我的头上。内容编辑似乎很奇怪,但只要它完成了工作,我很高兴!有一个好男人! – BriceSwift