Ios 如何解析didReceiveUserInfo用户信息参数?阿努阿伊

Ios 如何解析didReceiveUserInfo用户信息参数?阿努阿伊,ios,swift,Ios,Swift,我正在尝试解析以下变量的userInfo变量: func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : Any] = [:]) { 如果我打印(userInfo)我会看到: ["session": <__NSSingleObjectArrayI 0x608000011220>( { created = "2017-01-20 22:13:45 +0000"; device =

我正在尝试解析以下变量的
userInfo
变量:

func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : Any] = [:]) {
如果我
打印(userInfo)
我会看到:

["session": <__NSSingleObjectArrayI 0x608000011220>(
{
    created = "2017-01-20 22:13:45 +0000";
    device = "watchOS";
    id = 8;
    synced = 0;
    "person_id" = 17;
}
)
]
然而,这失败了。因此,我的问题是访问“会话”的数据。我想把这本书改成字典


谢谢。

看到您的输出,key
“session”
的值是一个
NSArray
,其中包含一个对象,该对象是
NSDictionary
,因此您可能需要从数组中检索一个元素:

if let sessions = userInfo["session"] as? [[String: Any]] {
    //You may need to retrieve one element from the array
    let sessionInfo = sessions[0]
    //Use `sessionInfo` as [String: Any]
    print(sessionInfo["created"]) //->Optional(2017-01-20 22:13:45 +0000)
    //...
}
if let sessions = userInfo["session"] as? [[String: Any]] {
    //You may need to retrieve one element from the array
    let sessionInfo = sessions[0]
    //Use `sessionInfo` as [String: Any]
    print(sessionInfo["created"]) //->Optional(2017-01-20 22:13:45 +0000)
    //...
}