Я пытаюсь заставить работать пользовательское усложнение ClockKit.
- Я создал собственный ComplicationController, соответствующий
CLKComplicationDataSource
. Он добавлен в список расширений просмотра какCLKComplicationPrincipalClass
.
Я могу выбрать усложнение на часах и активировать его, но я вижу только «----------------», а не мой настоящий заполнитель.
Что я пробовал
Я добавил пользовательский
override init(){…}
в свой ComplicationController и поставил в нем точку останова для отладки. Но даже при использовании схемы сборки усложнения эта точка останова никогда не достигается. Кажется, что мой пользовательский ComplicationController никогда не создается.Я вижу сообщение журнала
Extension received request to wake up for complication support.
, но мне непонятно, где это запускается в коде.Я также попытался вызвать следующее из моего основного
InterfaceController
, чтобы узнать о моих активных осложнениях.if let server = CLKComplicationServer.sharedInstance() { for complication in server.activeComplications { server.reloadTimelineForComplication(complication) } }
… но
server
возвращает ноль. Никакие усложнения, кажется, не активны и не перезагружаются.
Вопрос
Как мне успешно подключить свой собственный ComplicationController?
Также приветствуются любые дополнительные советы по отладке.
Обычно достаточно удалить усложнения из симулятора часов или приложения для часов на iPhone, или вам нужно переустановить все приложение для часов, чтобы увидеть действующее обновление, связанное с усложнением? Кроме того, когда я регистрирую что-то внутри своего пользовательского ComplicationController, должен ли я видеть его вывод только при работе со схемой сборки Complications или также с обычной схемой сборки Watch App?
Любые идеи по поиску проблемы приветствуются.