I transfer data from iOS to WatchKit. I can’t get the data to show what was received on the WatchKit side in some way.
This works great: iOS TableViewController
func getCloudKit() { ///... let publicData = container.publicCloudDatabase publicData.performQuery(query, inZoneWithID: nil) { results, error in if error == nil { // There is no error for play in results! { let newPlay = Play() newPlay.tColor = play["TColor"] as! String do { try WatchSessionManager.sharedManager.updateApplicationContext(["color" : newPlay.tColor]) NSLog("NewPColor: %@", newPlay.tColor) } catch { print(error) } self.objects.append(newPlay) } } else { print(error) } } }
This is not a call to any of the NSLog or displaying any data: WatchKit InterfaceController
import WatchConnectivity class InterfaceController: WKInterfaceController, WCSessionDelegate { @IBOutlet var colorLabel: WKInterfaceLabel! private let session: WCSession? = WCSession.isSupported() ? WCSession.defaultSession() : nil private func configureWCSession() { session?.delegate = self; session?.activateSession() } override init() { super.init() configureWCSession() } override func awakeWithContext(context: AnyObject?) { super.awakeWithContext(context) } func session(session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) { let colorWatch = applicationContext["color"] as? String NSLog("Check if anything here: %@", colorWatch!) dispatch_async(dispatch_get_main_queue()) { if let colorWatch = colorWatch { self.colorLabel.setText("From iPhone: \(colorWatch)") NSLog("Heres all the strings %@", colorWatch) } else { NSLog("Nothing") } } } }
Any ideas? Thanks!
source share