Ich versuche, das Miniaturbild des Videos, das ich ausgewählt habe, zu erhalten.Swift App stürzt beim Hochladen von Image auf firebase
Es scheint, wie es die Vorschau funktioniert erstellen, aber es stürzt ab, wenn es das Hochladen
Es befindet sich auf thumbnailStorageRef
ich stürzt zu Feuerbasis glauben.
Hier ist der entsprechende Code:
guard let imagePickerUrl = info[UIImagePickerControllerMediaURL] as? URL else { return }
let videoUrl = imagePickerUrl
// Generate image thumbnail.
let asset: AVAsset = AVAsset(url: videoUrl as URL)
let imageGenerator = AVAssetImageGenerator(asset: asset)
imageGenerator.appliesPreferredTrackTransform = true
var time = asset.duration
time.value = min(time.value, 3)
do {
let thumbnailImage = try imageGenerator.copyCGImage(at: time , actualTime: nil)
let image = UIImage(cgImage: thumbnailImage)
let imageData = UIImagePNGRepresentation(image)!
let thumbnailStorageRef = FIRStorage.storage().reference()
thumbnailStorageRef.child("thumbnails/" + randomString(length: 20) + ".png")
thumbnailStorageRef.put(imageData, metadata: nil, completion: { (thumbnailMeta, error) in
if error != nil {
print("An error has occured while uploading thumbnail:",error ?? "")
} else {
print("Thumbnail upload to database was successfull", thumbnailMeta?.downloadURL() ?? "")
}
})
} catch {
print("An error has occurred while making thumbnail:")
}
Beim Absturz der Fehler-Konsole sagt:
2017-08-11 17: 19: 08,656 Koala [17914: 491998] * App beenden wegen zu Uncaught Ausnahme 'NSInvalidArgumentException', Grund: '* - [__ NSPlaceholderDictionary initWithObjects: forKeys: count:]: Versuch, Objekt von Objekten einzufügen [1]' *** zuerst Anruf stac werfen k:
Ich weiß nicht, was diese Fehlermeldung versucht zu sagen, vielleicht, dass das Bild, das zum Hochladen versucht, ist Null? Ich bin mir nicht sicher.
wilde Vermutung: Ihre imagedata null ist. – Glenn
Ich wickelte einfach sicher mit wenn es und es sagt das ImageData ist nicht Null –
@Glenn die Bilddaten druckt "233912 Bytes" –