-1
私は奇妙な問題を抱えています。私はいつも画像を消去するのにこのコードを使いました。そして、他のviewControllerのこのアプリケーションでもうまくいきました。迅速なfirebaseストレージNSInternalInconsistencyException
は、今私は常に取得:
uncaught exception 'NSInternalInconsistencyException', reason: 'URL scheme must be one of gs://, http://, or https:// '
私は削除する画像のURLを印刷しようとしたマーカー/ gruopIdフォルダ内にある、削除する画像:
https://firebasestorage.googleapis.com/v0/b/firebase-itsthere.appspot.com/o/Markers%2F-KwKLgt2saNQpZiJuexi%2FC75EE058-61C3-47DB-AFAC-FE18078A0A7F?
とimageRefを:
gs://firebase-*******.appspot.com/Markers/-KwKLgt2saNQpZiJuexi/C75EE058-61C3-47DB-AFAC-FE18078A0A7F
どちらもOKです、なぜこれ?
私に手がかりを与えてください、6時間を無駄にしてください!
let storageRef = Storage.storage().reference(withPath: "MarkersMarkers\(self.groupId!)")
pictureOfGroup.child(self.groupId!).observe(.value, with: { (snapshot) in
if snapshot.exists(){
if let snapshots = snapshot.children.allObjects as? [DataSnapshot] {
for snap in snapshots {
let dict = snap.value as! [String: Any]
let imgToDelete = dict["image"] as! String
print(imgToDelete, "imgToDelete")
let url = imgToDelete
let imageRef = storageRef.storage.reference(forURL: url)
print(imageRef)
imageRef.delete { (error) in
if error != nil {
// Uh-oh, an error occurred!
print("error0: \(String(describing: error))")
} else {
// File deleted successfully
print("deleted")
}
}
}
}
}
})
}
私はこのパスが 'Markers \(self.groupId!)'であったと思いますが、パスは 'Markers/\(self.groupId!)' – 3stud1ant3