我想在用户个人资料中获取一些数据,我获得了一些信息,但是我被此卡住了。

Firebase数据库:ios - Firebase如何获取NSDictionary数据-LMLPHP

这是我的一些代码:

self.ref.child("users").child("profile").observe(.childAdded, with: { (snapshot) in


        if let dictionary = snapshot.value as? [String:Any] {

            let user = User()

            let brands = dictionary["status"] as! NSDictionary


            user.displayname = dictionary["displayname"] as? String
            user.isconnected = brands["isconnected"] as? String

            print(user.isconnected) //fatal error: unexpectedly found nil while unwrapping an Optional value


class User: NSObject {
    var displayname: String?
    var isconnected: String?
}

最佳答案

试试这样的事情:

guard let dictionary = snapshot.value as? [String: Any] else {
    return
}

guard let statusDictionary = dictionary["status"] as? [String: Any] else {
    return
}

guard let deviceStatusDictionary = statusDictionary["DEVICE_KEY"] as? [String: Any] else {
    return
}

let user = User()

user.displayname = dictionary["displayname"] as? String
user.isconnected = deviceStatusDictionary["isconnected"] as? Bool


您需要知道设备密钥。

和:

class User: NSObject {
    var displayname: String?
    var isconnected: Bool?
}

关于ios - Firebase如何获取NSDictionary数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45371342/

10-11 17:19
查看更多