【发布时间】:2015-09-14 22:32:34
【问题描述】:
我发现了许多问题和许多答案,但没有最终的请求示例:
谁能给出最后一个示例在Objective C中,将WCSession 与IOS 应用程序和具有多个ViewController 的Watch 应用程序(WatchOS2)一起使用的最佳实践是什么。
到目前为止,我注意到以下事实:
1.) 在 AppDelegate 的父 (IOS) 应用中激活 WCSession:
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
//Any other code you might have
if ([WCSession isSupported]) {
self.session = [WCSession defaultSession];
self.session.delegate = self;
[self.session activateSession];
}
}
2.) 在 WatchOS2 端使用<WCSessionDelegate>。但其余的对我来说完全不清楚!一些答案是通过在传递的字典中指定键来讨论的,例如:
[session updateApplicationContext:@{@"viewController1": @"item1"} error:&error];
[session updateApplicationContext:@{@"viewController2": @"item2"} error:&error];
其他人正在谈论检索默认会话
WCSession* session = [WCSession defaultSession];
[session updateApplicationContext:applicationDict error:nil];
其他人在谈论不同的队列? “如有必要,客户端有责任分派到另一个队列。分派回主队列。”
我完全糊涂了。所以请举例说明如何将 WCSession 与 IOS 应用程序和 WatchOS2 应用程序与多个 ViewController 一起使用。
我需要它用于以下情况(简化): 在我的父应用程序中,我正在测量心率、锻炼时间和卡路里。在 Watch 应用 1. ViewController 我会在 2. ViewController 上显示心率和锻炼时间。我也会显示心率和燃烧的卡路里。
【问题讨论】: