Firebase存储 - 在预期时未调用PutData和下载

时间:2016-08-11 01:59:01

标签: ios swift firebase firebase-storage

我正在创建一个涉及图片视图的应用,用户首次登录时会将照片上传为他们的照片,如下所示:

let storage = FIRStorage.storage()

        let storageRef = storage.referenceForURL("gs:xxxxxxxxxxxxxxxx")
        let picRef = storageRef.child("images/" + "myname" + ".jpg")
        let data = UIImagePNGRepresentation(pickedImage)
        forceUpload(profPicRef, data: data!)

    let uploadTask = picRef.putData(data, metadata: nil) { metadata, error in
        if (error != nil) {
            print(error)
        } else {
            print("uploaded")
            // Metadata contains file metadata such as size, content-type, and download URL.
            let downloadURL = metadata!.downloadURL
        }
    }
}

然后下次他们回到这个视图控制器时,在ViewDidAppear中我有这个代码,应该下载图片并将其放入图片中查看:

 picRef.dataWithMaxSize(1 * 4096 * 4096) { (data, error) -> Void in
        print("in download")
        if (error != nil) {
            print(error)
        } else {
            retPic = UIImage(data: data!)!

然后我将retPic设置为图像视图的图像。问题是,这些方法似乎是随机调用的。当我第一次进入这个视图控制器时,图像视图中没有图片和#34;下载"没有印刷。此外,当我上传图片时,它不会一直上传并且已上传"并不总是打印。在来回切换到此视图控制器之后,它最终似乎随机加载。我想知道为什么这些putData和dataWithMaxSize函数在看似随机的时间被调用,以及如何在我想要它们时强制它们发生。我也有这个问题与快照,并将它们移动到ViewWillAppear似乎工作,但不是在这里。

谢谢!

0 个答案:

没有答案