我正试图将数据从iOS应用程序发送到手表应用程序。数据的发送似乎有效,但接收却无效。
当手表应用程序收到数据时,它会给我一个例外:
[WC]-[WCSession handleApplicationContextWithPairingID:]_block_invoke_2 delegate RSense_Watch_App_Extension.WatchSessionManager未实现会话:didReceiveApplicationContext:
问题是我确实实现了上述函数。
这是来自我的手表应用程序:
extension WatchSessionManager {
// Receiver
func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : AnyObject]) {
DispatchQueue.main.async(execute: {
print("Data Received")
})
}
iOS和Watch应用程序已正确配对,会话也可以。
你能找到令人困惑的东西吗?
感谢@Larme和@pkc456,我发现了这个问题。
我只是在函数中添加了public,并将参数"AnyObject"更改为"Any"。
以下是更新的功能:
public func session(_ session: WCSession, didReceiveApplicationContext applicationContext: [String : Any]) {
DispatchQueue.main.async(execute: {
print("Data Received")
})
}
它现在起作用了。