Есть ли способ обновить услугу прямо из приложения для iPhone?
Я бы хотел, чтобы пользователь мог вообще обойти приложение для часов, если это возможно.
Я попытался импортировать ClockKit на моем ViewController, чтобы создать экземпляр CLKComplicationServer
, Я получаю ошибку "Нет такого модуля".
Есть ли способ напрямую связаться с усложнением из приложения для iOS?
1 ответ
CLKComplicationServer
это часть ClockKit
это доступно только watchOS2.
Вы можете отправить данные для осложнения из iOS, используя [WCSession transferCurrentComplicationUserInfo:]
, Не как [WCSession transferUserInfo:]
Это разбудит приложение watchOS и доставит ваше сообщение как можно скорее.
Это разбудит ваше приложение watchOS и позвонит -(void)session:(WCSession *)session didReceiveUserInfo:(NSDictionary<NSString *,id> *)userInfo
сторожевой стороны WCSession
делегат. В этом делегате вы можете использовать ComplicationServer
как это:
CLKComplicationServer* server = [CLKComplicationServer sharedInstance];
[server.activeComplications enumerateObjectsUsingBlock:^(CLKComplication * _Nonnull each, NSUInteger idx, BOOL * _Nonnull stop) {
[server reloadTimelineForComplication: each];
}];
наконец это вызовет ваш ComplicationController
,