【问题标题】:Saving & retrieving images on Firebase [duplicate]在 Firebase 上保存和检索图像 [重复]
【发布时间】:2016-02-06 05:46:20
【问题描述】:

在尝试 Firebase 的过程中,作为 Parse.com 的可能替代品(不幸地消失了),我使用下面的代码在 Swift 中在线保存了一个 PNG 图像。

    let fn = self.toolBox.getDocumentsDirectory().stringByAppendingPathComponent("M0-1.png")
    let im = UIImage(contentsOfFile: fn),
    dat = UIImagePNGRepresentation(im!),
    b64 = dat?.base64EncodedStringWithOptions(.Encoding64CharacterLineLength),
    qs = ["string": b64!],
    r = diltRootRef.childByAppendingPath("zs"),
    us = ["img": qs]
    r.setValue(us)

保存部分似乎工作,但我想如何取回我保存的图像?到目前为止我所做的一切都失败了。

【问题讨论】:

    标签: ios swift firebase


    【解决方案1】:

    我建议使用observeSingleEventOfType(:_) 检索图像,因为它是一次性读取。

    一旦你同步了字符串值,你可以使用NSData()初始化器,然后创建一个UIImage

    imageRef.observeSingleEventOfType(.Value) { (imageSnap: FDataSnapshot!) in
      let base64String = imageSnap.value as! String
      let decodedData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0))    
      let image = UIImage(data: decodedData!)
    }
    

    Check out this example repo on using base64 images in a UITableView.

    【讨论】:

    • Swift2 retrieving images from Firebase这个问题的答案中有读写快速代码和大卫的回答将读取从observeEventType更改为observeSingleEventOfType
    • @Jay 请将此问题标记为重复。
    • @FrankvanPuffelen 完成
    • 查看重复的问题:它有效。这段代码的 sn-p 对我产生了错误。
    • @thiagowfx 的错误是什么?另一个问题使用了一个实时观察器,这在下载图像时性能不佳。
    猜你喜欢
    • 2016-08-16
    • 1970-01-01
    • 2021-07-26
    • 2020-07-10
    • 2017-02-23
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 1970-01-01
    相关资源
    最近更新 更多