[解決済み] タイプ 'StorageMetadata' の値には、メンバー 'downloadURL' がありません。
2022-03-04 04:57:25
質問
このコーディングで助けが必要です。先日まではうまくいっていたのですが エラーは
if let ur; = metaData?.downladURL()
func uploadProfileImage(_ image:UIImage, completion: @escaping ((_ url:URL?)->())) {
guard let uid = Auth.auth().currentUser?.uid else { return }
let storageRef = Storage.storage().reference().child("user/\(uid)")
guard let imageData = UIImageJPEGRepresentation(image, 0.75) else { return }
let metaData = StorageMetadata()
metaData.contentType = "image/jpg"
storageRef.putData(imageData, metadata: metaData) { metaData, error in
if error == nil, metaData != nil {
if let url = metaData?.downloadURL() {
completion(url)
} else {
completion(nil)
}
// success!
} else {
// failed
completion(nil)
}
}
}
解決方法は?
FirebaseのPodをアップデートしたことがあるかと思います。Firebase 5.0では、Firebaseのポッドから
metaData?.downladURL()
関数を使用します。ウェブサイトの更新されたドキュメントに従わなければなりません。そこからコピーしています。
// Data in memory
let data = Data()
// Create a reference to the file you want to upload
let riversRef = storageRef.child("images/rivers.jpg")
// Upload the file to the path "images/rivers.jpg"
let uploadTask = riversRef.putData(data, metadata: nil) { (metadata, error) in
guard let metadata = metadata else {
// Uh-oh, an error occurred!
return
}
// Metadata contains file metadata such as size, content-type.
let size = metadata.size
// You can also access to download URL after upload.
riversRef.downloadURL { (url, error) in
guard let downloadURL = url else {
// Uh-oh, an error occurred!
return
}
}
}
Firebaseのストレージです。 https://firebase.google.com/docs/storage/ios/upload-files
関連
-
[解決済み] これを解決するにはどうしたらいいのでしょうか。UILabel.textは、メインスレッドからのみ使用する必要があります。
-
[解決済み] Swiftの辞書にキーが含まれているかどうかを判断し、その値を取得する。
-
[解決済み] Swiftでbase64StringをStringに変換する方法とは?
-
[解決済み] Swift 3でdispatch_onceはどうなる?
-
[解決済み] Error: this class is not key value coding-compliant for key tableView.' [重複] を修正する方法。
-
[解決済み] 2倍値を小数点以下x桁に丸める処理を素早く行う。
-
[解決済み】Swiftの辞書にキーが含まれているかどうかを判断し、その値を取得する。
-
[解決済み】Swiftでオブジェクトが与えられた型かどうかを確認する
-
[解決済み】SwiftでFloatをIntに変換する。
-
[解決済み】Xcode 8 Beta 3 Legacy Swiftを使用する問題
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】インスタンスメンバを型で使用することができない
-
[解決済み] Swift presentViewController
-
[解決済み] Swift 5でXOR?
-
[解決済み] SwiftはPass By ValueかPass By Referenceか
-
[解決済み] SwiftでString.Indexはどのように動作するのか
-
[解決済み] 純粋な」Swift で弱いプロトコル参照を作るには (@objc なしで) どうしたらいいですか?
-
[解決済み] Swiftで乱数を生成する方法とは?
-
[解決済み】Swift - StringをDoubleに変換する方法
-
[解決済み】Swiftでボタンに丸みを帯びたボーダーを付けるにはどうすればいいですか?
-
[解決済み】解決方法。iOS 13.0で'keyWindow'が非推奨になりました。