FirebaseStorageUI + sdwebimage
FirebaseStorageUI + sdwebimage
我今天更新了 firebase pods,但遇到了一些问题。
首先我收到了这个错误:
No such module 'FirebaseStorageUI'
现在我改成:
import FirebaseStorage
import FirebaseUI
这似乎有效,因为所有功能仍然可用,例如存储和 sd_webimage。
现在我收到这个错误:
Cannot convert value of type 'StorageReference' to expected argument type 'URL?'
以下代码在更新前有效
let storageRef = Storage.storage().reference().child("user/thomas_1")
self.profileImageView.sd_setImage(with: storageRef, placeholderImage: UIImage(named: "placeholder"), completed: { (image, error, cacheType, storageRef) in
if image != nil && error != nil {
UIView.animate(withDuration: 0.3) {
self.profileImageView.alpha = 1
}
}
})
现在它没有,它给了我那个错误,我把它改成了 url 但它仍然不起作用或者给我错误。按照文档中的示例和上述方法的示例应用程序应该可以工作。我还发现 url 是直接 gs:// 路径,无法访问。
如果有人能指出(也许是明显的)错误,那将非常有帮助,在此先感谢。
你需要获取图片的下载URL,可以通过downloadURL
方法获取,像这样:
let storageRef = Storage.storage().reference().child("user/thomas_1")
storageRef.downloadURL { url, error in
guard let url = url else { return }
self.profileImageView.sd_setImage(with: storageRef, placeholderImage: UIImage(named: "placeholder"), completed: { (image, error, cacheType, storageRef) in
if image != nil && error != nil {
UIView.animate(withDuration: 0.3) {
self.profileImageView.alpha = 1
}
}
})
}
这会起作用,但我建议不要像上面的示例那样每次都生成下载 URL,我建议在最初上传图像后立即生成它,然后存储此下载 URL在您使用的任何数据库中。
我今天更新了 firebase pods,但遇到了一些问题。 首先我收到了这个错误:
No such module 'FirebaseStorageUI'
现在我改成:
import FirebaseStorage
import FirebaseUI
这似乎有效,因为所有功能仍然可用,例如存储和 sd_webimage。
现在我收到这个错误:
Cannot convert value of type 'StorageReference' to expected argument type 'URL?'
以下代码在更新前有效
let storageRef = Storage.storage().reference().child("user/thomas_1")
self.profileImageView.sd_setImage(with: storageRef, placeholderImage: UIImage(named: "placeholder"), completed: { (image, error, cacheType, storageRef) in
if image != nil && error != nil {
UIView.animate(withDuration: 0.3) {
self.profileImageView.alpha = 1
}
}
})
现在它没有,它给了我那个错误,我把它改成了 url 但它仍然不起作用或者给我错误。按照文档中的示例和上述方法的示例应用程序应该可以工作。我还发现 url 是直接 gs:// 路径,无法访问。
如果有人能指出(也许是明显的)错误,那将非常有帮助,在此先感谢。
你需要获取图片的下载URL,可以通过downloadURL
方法获取,像这样:
let storageRef = Storage.storage().reference().child("user/thomas_1")
storageRef.downloadURL { url, error in
guard let url = url else { return }
self.profileImageView.sd_setImage(with: storageRef, placeholderImage: UIImage(named: "placeholder"), completed: { (image, error, cacheType, storageRef) in
if image != nil && error != nil {
UIView.animate(withDuration: 0.3) {
self.profileImageView.alpha = 1
}
}
})
}
这会起作用,但我建议不要像上面的示例那样每次都生成下载 URL,我建议在最初上传图像后立即生成它,然后存储此下载 URL在您使用的任何数据库中。