didReceiveApplicationContext

didReceiveApplicationContext

我正在尝试将数据从iOS应用发送到Watch应用。
数据发送似乎正常,但接收却无效。

当Watch应用收到数据时,它会给我以下异常:

[WC]-[WCSession handleApplicationContextWithPairingID:] _ block_invoke_2委托RSense_Watch_App_Extension.WatchSessionManager未实现 session :didReceiveApplicationContext:

问题是我确实实现了上述功能。

这是从我的Watch App:

extension WatchSessionManager {

// Receiver
func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) {

    DispatchQueue.main.async(execute:  {
        print("Data Received")
    })

}

iOS和Watch App已正确配对, session 也可以。

你能找到正在挣扎的东西吗?

最佳答案

感谢@Larme和@ pkc456,我找到了问题。

我只是将public添加到函数中,并将参数“AnyObject”更改为“Any”。

这是更新的功能:

public func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : Any]) {

    DispatchQueue.main.async(execute:  {
        print("Data Received")
    })

}

现在可以使用了。

10-08 11:28