微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

(WatchConnectivity) WCSession 缺少委托

如何解决(WatchConnectivity) WCSession 缺少委托

我正在尝试在手表和 iPhone 之间实现消息传递,其中手表是向手机发送数据的那个。它必须在后台发生,因此我正在使用 applicationContxt。但是,每当我尝试运行代码时,我都会收到这些错误有时它工作一次,手机接收数据,然后错误开始。

[WC] -[WCSession handleApplicationContextWithPairingID:]_block_invoke delegate (null) does not implement session:didReceiveApplicationContext:

[WC] WCSession is missing its delegate
import WatchConnectivity

class PhoneWorkingSet: NSObject,WCSessionDelegate {

    override init() {
        super.init()
       }
    
    func startSession() {
       if WCSession.isSupported() {
        let session = WCSession.default
        session.delegate = self
        session.activate()
        }
    }
    

    func session(_ session: WCSession,didReceiveApplicationContext applicationContext: [String : Any]) {
    
        print("Received: \(applicationContext)")
    }
    
    
    
    func session(_ session: WCSession,activationDidCompleteWith activationState: WCSessionActivationState,error: Error?) {
        if(!session.isReachable) {
            print("Watch not reachable")
        } else {
            print("Watch Reachable")
        }
    }
    
    func sessionDidBecomeInactive(_ session: WCSession) {
        print("has contentPending: \(session.hasContentPending)")
    }
    
    func sessionDidDeactivate(_ session: WCSession) {
        
    }
  

}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。