OGeek|极客世界-中国程序员成长平台

标题: ios - 等待 firebase 请求加载以继续的问题 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 18:04
标题: ios - 等待 firebase 请求加载以继续的问题

我正在等待从我的 firebase 数据库中检索数据并将其存储在字典中。 我正在尝试使用信号量来执行此操作,但出现 NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9806) 错误 我试图通过更改我的 info.plist 来解决这个问题。但我没有运气。这不是要走的路吗?

import UIKit
import Firebase

var done = false
class ListViewController: UIViewController, UICollectionViewDelegate {

let rootref = FIRDatabase.database().reference()
var item_dict = Dictionary<String,[String]>()
var item_img_dict = Dictionary<String,[String]>()
let semaphore = DispatchSemaphore(value: 0)
let queue = DispatchQueue.global()

override func viewDidLoad() {
    super.viewDidLoad()
    self.title = "hello!"
    print("before calling function==========================")
    print("go in to request")
    DispatchQueue.global(qos: .userInitiated).async{
        self.rootref.child("items").observeSingleEvent(of: .value, with: { (snapshot) in
            print("DOING SOMETHING IN FUNCTION !!!!")
            for(type_2_container,item_list) in snapshot.value! as! Dictionary<String, AnyObject>{
                for(uid_container, item_detail_container) in item_list as! Dictionary<String, AnyObject>{
                    for(uid, item_detail) in item_detail_container as! Dictionary<String, AnyObject>{
                        let item_detail_dict = item_detail as? Dictionary<String,String>
                        if self.item_dict.index(forKey: uid as! String) != nil{
                            self.item_dict[uid]?.append(item_detail_dict!["item_name"]!)
                            self.item_img_dict[uid]?.append(item_detail_dict!["item_image"]!)
                        }else{
                            self.item_dict[uid] = [item_detail_dict!["item_name"]!]
                            self.item_img_dict[uid] = [item_detail_dict!["item_image"]!]
                        }
                    }
                }
            }
            self.semaphore.signal()
        })
    }
    self.semaphore.wait()
    print(self.item_dict)
    print(self.item_img_dict)
}



Best Answer-推荐答案


感谢提问。

已经面临同样的问题。

您只需下载新的GoogleService-Info.plist文件,然后替换为项目中的现有文件。

它会解决你的问题。

如果上述解决方案不适合您,请尝试以下解决方案。

解决方案:2

1 ) 从项目中移除 pod 文件 (How to remove pod file)

2 ) 从项目中删除旧的 GoogleService-Info 文件。

3 ) 下载 GoogleService-Info 并添加到项目中。

4 ) 再次添加 pods 文件。

然后进行测试。

关于ios - 等待 firebase 请求加载以继续的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40623533/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (https://ogeek.cn/) Powered by Discuz! X3.4