问题描述
我正在尝试将使用 UIImagePickerController 选择的视频文件上传到 Firebase 存储,但没有成功。我的代码是
let imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = .savedPhotosAlbum
imagePicker.allowsEditing = false
imagePicker.mediaTypes = [kUTTypeImage as String,kUTTypeMovie as String]
func imagePickerController(_ picker: UIImagePickerController,didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
let info = convertFromUIImagePickerControllerInfoKeyDictionary(info)
let mediaType = info[UIImagePickerController.InfoKey.mediaType.rawValue] as AnyObject
picker.dismiss(animated: true,completion: {
if mediaType as! String == kUTTypeMovie as String {
let videoURL = info[UIImagePickerController.InfoKey.mediaURL.rawValue] as? URL
info[UIImagePickerController.InfoKey.mediaURL.rawValue] as? NSURL
print("VIDEO URL: \(videoURL!)")
let storageRef = storage.reference()
let metadata = StorageMetadata()
metadata.contentType = "video/mp4"
let videoRef = storageRef.child("chatVideo/\(videoUrl)/")
videoRef.putFile(from: videoURL as URL,metadata: metadata,completion: { (metadata,error) in
if error == nil {
videoRef.downloadURL { (url,error) in
guard let downloadURL = url else {
return
}
complition(downloadURL.absoluteString,nil)
}
print("Successful video upload")
}
else{
print(error?.localizedDescription as Any)
}
})
}
else{
print("Image file selected")
}
})
}
选择视频并尝试上传后出现以下错误
Failed to issue sandbox extension for file file:///private/var/mobile/Containers/Data/PluginKitPlugin/712AE51B-86C2-441C-A5C5-04C2111EFA25/tmp/trim.A551D9FA-FD79-4EAA-88DF-F72B6DAB35E6.MOV,errno = 1
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)