我打电话给
`[[WCSession defaultSession] updateApplicationContext:message error:error]`
在我的
中触发的方法 `-(void)session:(WCSession *)session didReceiveApplicationContext:(NSDictionary<NSString *,id> *)applicationContext`
ExtensionDelegate
中的方法。但是从这里我想在WKInterfaceController
中调用一个公共方法来更新我的UI。我不想重新加载根控制器,因为这个特定的控制器不是根控制器。是否可以从ExtensionDelegate
调用任何公共方法。我可以打电话吗
-(void)session:(WCSession *)session didReceiveApplicationContext:(NSDictionary<NSString *,id> *)applicationContext
而不是ExtensionDelegate
?
答案 0 :(得分:0)
您可以使用WCSession
的
public func sendMessage(message: [String : AnyObject], replyHandler: (([String : AnyObject]) -> Void)?, errorHandler: ((NSError) -> Void)?)
这会调用WCSessionDelegate
的
public func session(session: WCSession, didReceiveMessage message: [String : AnyObject], replyHandler: ([String : AnyObject]) -> Void)
委托类中的方法。这可以从应用程序和扩展程序中用于即时消息传输。阅读more