Я тестирую и могу воспроизвести это в очень простом приложении.Я слежу за видео WWDC 2015: https://developer.apple.com/videos/play/wwdc2015/209/
Другой учебник, в котором используется та же информация: https://www.bignerdranch.com/blog/watchkit-2-complications/
Как и видео WWDC, я хочу, чтобы мое приложение предоставляло только CLKComplicationTemplateModularLargeStandardBody
осложнение.Поэтому в общих настройках целевого значения моего расширения я включил ТОЛЬКО Modular Large
.
Для простого теста я добавил только код для заполнителей:
- (void)getLocalizableSampleTemplateForComplication:(CLKComplication *)complication withHandler:(void(^)(CLKComplicationTemplate * __nullable complicationTemplate))handler {
// This method will be called once per supported complication, and the results will be cached
NSLog(@"getLocalizableSampleTemplateForComplication: %ld",(long)complication.family);
if (complication.family==CLKComplicationFamilyModularLarge) {
CLKComplicationTemplateModularLargeStandardBody *template = [[CLKComplicationTemplateModularLargeStandardBody alloc] init];
template.headerTextProvider=[CLKSimpleTextProvider textProviderWithText:@"Date"];
template.body1TextProvider=[CLKSimpleTextProvider textProviderWithText:@"Class"];
template.body2TextProvider=[CLKSimpleTextProvider textProviderWithText:@"Location"];
handler(template);
} else {
handler(nil);
}
}
После этого я удалил и даже сбросил симуляторы iPhone и Watch.Затем запустил приложение.На экране настройки часов для Infograph Modular
циферблата я не вижу своего доступного приложения.
Интересная вещь (ошибка ???) Я заметил, что если я перейду к общим настройкам расширения и включу все сложности, то онпоявляется.
Но я не хочу приводить другие виды осложнений.Я только хочу предоставить Модульный большой для моего приложения.Это ошибка?
Еще одна вещь, которую я заметил, это то, что заполнитель показывает -------- вместо моих предоставленных шаблонов TextProvider.Это еще одна ошибка?
Я сбрасывал симулятор, много раз удалял свое приложение с часов и с iPhone, но не нашел решения.После сброса печатается NSLog
для getLocalizableSampleTemplateForComplication
, однако на экране настройки ничего не появляется.