我正在尝试从 WCSession
获取最新数据我不明白为什么即使我刚刚收到 didReceiveApplicationContext
称呼。
更多细节可以直接在代码中获得:
//Watch Code
override func awakeWithContext(context: AnyObject?) {
super.awakeWithContext(context)
if (WCSession.isSupported()) {
session = WCSession.defaultSession()
session?.delegate = self
session?.activateSession()
verifyUser()
}
}
// 1. This function is called, with the applicationContext data
func session(session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) {
print("CONTEXT \(applicationContext)")
}
// 2. I manually trigger this call from the watch with a button.
// even if I call this function after the previous function (1) it always print an Empty ([:]) applicationContext.
@IBAction func printContext(){
print(session?.applicationContext)
}
我期待
applicationContext
使用 updateApplicationContext
始终使用最新信息集更新属性因为我总是使用相同的 WCSession
通过 WCSession.defaultSession
获得适用于 iOS 和 Watch 应用。我对连接有什么误解吗?!
最佳答案
receivedApplicationContext
就是你要找的。 applicationContext
的内容是您发送的内容,而不是收到的内容。
关于watchkit - ApplicationContext 属性总是返回一个空字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33565925/