私は、ユーザーがfirebaseサービス(firebase storage)を使って自分のプロフィール画像を更新できるアプリを構築しています。firebase storageの変更を監視し、リアルタイムでviewcontrollerを更新するにはどうすればいいですか?
私のアプリのユーザーには複数の友達がいて、彼の友人の写真がビューコントローラーに表示されます。
私が達成したいのは、ユーザーが彼のプロフィール画像を更新するときに、(他のデバイスを使用して接続された)友人がすべて自分の画像をリアルタイムで変更することです。
私は最も簡単な解決策は、ストレージの変更を監視することだと思います。ここで
は、私は、ユーザーの画像
let storage = FIRStorage.storage()
let storageref = storage.reference(forURL: "my firebase url")
let imageref = storageref.child("images")
let userid : String = (user.uid)
let spaceref = imageref.child("\(userid).jpg")
let imageConverter = ImageConverter()
var profilePicture : UIImage = imageConverter.cropToBounds(image: self.profilePicture.image!, width: 150 ,height: 150)
profilePicture = imageConverter.resizeImage(image: profilePicture, targetSize: CGSize(width: 140, height: 150))
let imageData = UIImagePNGRepresentation(profilePicture)
_ = spaceref.put(imageData!, metadata: nil){ metadata, error in
if (error != nil) {
loadingScreenViewController.view.removeFromSuperview()
self.alert(title: "Error", description: "please check your internet connection and try again")
}
else {
_ = metadata!.downloadURL
}
loadingScreenViewController.view.removeFromSuperview()
をアップロードするために使用されるコードは、誰もがfirebaseストレージにchangementを鑑賞する方法についてのアイデアを持っているんです。
は、私は単に私の知る限りではFirebaseは、ストレージモジュールで「変化を見て」サポートしていません
let imageRef = storage.child("images/\(friendsManager.friends[indexPath.row].id).jpg")
良いアイデアクリス -
は次に変更を監視します –