我在尝试同步 iPhone 应用程序和 WatchKit 应用程序时遇到了问题。问题是 - 我的 WatchKit 应用程序tableView
附加了来自 iPhone 的数据数组。
我正在使用来自 Watch Connectivity 框架的交互式消息传递
建立会话
if(WCSession.isSupported()){
self.session = WCSession.defaultSession()
self.session.delegate = self
self.session.activateSession()
}
向 WatchKit 应用发送消息
do {
let dataDict = ["data": dictionary1]
try WCSession.defaultSession().updateApplicationContext(dataDict)
}
catch {
print(error)
}
这就是我在手表上接收消息的方式
func session(session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) {
dispatch_async(dispatch_get_main_queue()) { () -> Void in
if let retrievedArray1 = applicationContext["data"] as? [Int : Bool] {
self.arrayOnWatch = retrievedArray1
}
}}
它在一个例外情况下运行良好 - 我无法获取数据数组,直到我在 iPhone 上启动应用程序,这在我的情况下不是解决方案。
关于如何在不打开实际手机应用程序的情况下传输和接收消息的任何想法?
谢谢你。