3

如果可能的话,我想让用户能够完全绕过手表应用程序。

我尝试在 ViewController 上导入 ClockKit 来创建CLKComplicationServer. 我收到“没有这样的模块”错误。

有没有办法直接与 iOS 应用程序的并发症进行交流?

4

1 回答 1

7

CLKComplicationServerClockKit仅 watchOS2 可用的一部分。

您可以使用[WCSession transferCurrentComplicationUserInfo:]. 不像[WCSession transferUserInfo:]它会唤醒watchOS App,并尽快传递您的消息。

它将唤醒您的 watchOS 应用程序,并调用-(void)session:(WCSession *)session didReceiveUserInfo:(NSDictionary<NSString *,id> *)userInfoWatch sideWCSession的代表。在这个委托中,你可以ComplicationServer这样使用:

CLKComplicationServer* server = [CLKComplicationServer sharedInstance];
[server.activeComplications enumerateObjectsUsingBlock:^(CLKComplication * _Nonnull each, NSUInteger idx, BOOL * _Nonnull stop) {
    [server reloadTimelineForComplication: each];
}];

最后它会调用你的ComplicationController.

于 2015-10-29T07:23:08.537 回答