ios - 将下载的 Gif 存储在 Firebase 中

标签 ios swift firebase google-cloud-firestore gif

我正在使用 Giphy APIFLAnimatedImage 存储库来获取和显示 gif。有没有办法将选定的 gif 存储到 firebasefirestore 以便稍后获取?

我的原因是为了避免重新下载 gif 的繁重任务。它会存储 Data 对象的字节吗?

我知道我可能可以只存储 gif url,然后当我需要 gif 时,查询字符串并重新下载,但如果有办法的话,我希望再次避免这种情况。

如有任何指导,我们将不胜感激。

let url = URL(string: gifUrlString)!
let imageData = try? Data(contentsOf: url)
let image = FLAnimatedImage(animatedGIFData: imageData)

最佳答案

可以存储图像的数据

let imageData = try? Data(contentsOf: url)

Firebase putData function

但您仍然需要使用 firebase getData 再次下载它,因此您可以使用 CoreData/Realm 在应用程序中创建一个简单的数据库结构,将每个 gif 与下载的时间戳相关联,然后将其上传到 Firebase 并更新您的本地数据库有了这些数据

顺便说一句避免使用Data(contentsOf),因为它会阻塞主线程,直到抓取日期为止,因此在后台线程中使用它

关于ios - 将下载的 Gif 存储在 Firebase 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56174660/

相关文章:

ios - 如何为 i386 和 x86_64 架构构建 Cocoa Touch Framework?

ios - 添加 IBAction 以从我的应用程序发送电子邮件

ios - 如何使用 Swift 将 ImageView 正确定位在照片顶部

java - 如何退出 setValue Firebase 数据库?

android - 任务 ':app:transformClassesWithDexBuilderForDebug'的执行失败。 >无法在Android Studio中为文件创建MD5哈希(Flutter)

ios - NSDictionary长度:unrecognized selector sent to instance

iphone - html img 标签中的图像在我的 iPhone 应用程序中变得模糊

ios - 在 UIView Swift 中居中 CAShapeLayer

ios - React Native 排毒记录用户交互测试脚本

ios - 转到详细 View Controller