Firebase Storageにビデオを保存する私のソリューションです。スウィフト3.によって呼び出され
func uploadVideo(_ path: URL, _ userID: String,
metadataEsc: @escaping (URL, FIRStorageReference)->(),
progressEsc: @escaping (Progress)->(),
completionEsc: @escaping()->(),
errorEsc: @escaping (Error)->()) {
let localFile: URL = path
let videoName = getName()
let nameRef = StorageHandler.videosRef.child(userID).child(videoName)
let metadata = FIRStorageMetadata()
metadata.contentType = "video"
let uploadTask = nameRef.putFile(localFile, metadata: metadata) { metadata, error in
if error != nil {
errorEsc(error!)
} else {
if let meta = metadata {
if let url = meta.downloadURL() {
metadataEsc(url, nameRef)
}
}
}
}
_ = uploadTask.observe(.progress, handler: { snapshot in
if let progressSnap = snapshot.progress {
progressEsc(progressSnap)
}
})
_ = uploadTask.observe(.success, handler: { snapshot in
if snapshot.status == .success {
uploadTask.removeAllObservers()
completionEsc()
}
})
}
func getName() -> String {
let dateFormatter = DateFormatter()
let dateFormat = "yyyyMMddHHmmss"
dateFormatter.dateFormat = dateFormat
let date = dateFormatter.string(from: Date())
let name = date.appending(".mp4")
return name
}
について:
StorageHandler.shared.uploadVideo(myFileURL, myUserID, metadataEsc: { (url, ref) in
print("url = \(url)") // here is the URL you can then store into your Firebase tree
print("ref = \(ref)")
}, progressEsc: { progress in
print("progress = \(progress)")
}, completionEsc: {
print("done")
}, errorEsc: { error in
print("*** Error during file upload: \(error.localizedDescription)")
})
こんにちは、uがfirebaseストレージから動画を再生する任意の解決策を見つけますか?シェアしてください。 – abpatil