sto cercando di creare complicazioni per watchOS2. Ho creato un nuovo target per la mia applicazione iOS - con Glances and Complications Voglio avere una sola Complicazione Modulare Grande.La complicazione blocca Apple Watch durante la personalizzazione di
quando ho eseguito il tentativo di impostare complicazione Guarda blocca (sia su simulatore e vero e proprio orologio)
Ecco il mio codice di complicazione:
-(void)getCurrentTimelineEntryForComplication:(CLKComplication *)complication withHandler:(void (^)(CLKComplicationTimelineEntry * _Nullable))handler {
if (complication.family == CLKComplicationFamilyModularLarge) {
CLKComplicationTemplateModularLargeColumns *template = [[CLKComplicationTemplateModularLargeColumns alloc] init];
NSString *title = NSLocalizedString(@"TODAYINTAKE", nil);
template.row1Column1TextProvider = [CLKSimpleTextProvider textProviderWithText:title];
template.row2Column2TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"kcal"];
template.row3Column2TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"ml"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([self isDateToday:[defaults objectForKey:@"dateSaved"]]) {
template.row2Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"%@",[defaults objectForKey:@"energy"]];
template.row3Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"%@", [defaults objectForKey:@"water"]];
} else {
template.row2Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"0"];
template.row3Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"0"];
}
template.row2ImageProvider = [CLKImageProvider imageProviderWithOnePieceImage:[UIImage imageNamed:@"energy64"]];
template.row3ImageProvider = [CLKImageProvider imageProviderWithOnePieceImage:[UIImage imageNamed:@"water64"]];
template.row1ImageProvider = [CLKImageProvider imageProviderWithOnePieceImage:[UIImage imageNamed:@"64"]];
template.row1Column2TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@" "];
CLKComplicationTimelineEntry *entry = [CLKComplicationTimelineEntry entryWithDate:[NSDate new] complicationTemplate:template];
handler(entry);
} else handler(nil);
}
-(void)getPlaceholderTemplateForComplication:(CLKComplication *)complication withHandler:(void (^)(CLKComplicationTemplate * _Nullable))handler {
if (complication.family == CLKComplicationFamilyModularLarge) {
CLKComplicationTemplateModularLargeTable *template = [[CLKComplicationTemplateModularLargeTable alloc] init];
NSString *title = NSLocalizedString(@"TODAYINTAKE", nil);
template.headerTextProvider = [CLKSimpleTextProvider textProviderWithText:title];
template.row1Column2TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"kcal"];
template.row2Column2TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"ml"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([self isDateToday:[defaults objectForKey:@"dateSaved"]]) {
template.row1Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"%@",[defaults objectForKey:@"energy"]];
template.row2Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"%@", [defaults objectForKey:@"water"]];
} else {
template.row1Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"0"];
template.row2Column1TextProvider = [CLKSimpleTextProvider textProviderWithFormat:@"0"];
}
handler(template);
} else handler(nil);
}
sto passando CLKComplicationTimeTravelDirectionNone
come viaggio nel tempo supportato indicazioni
Sono impotente poiché non riesco a vedere alcun errore in console e il simulatore o il dispositivo si blocca.
Dalla relazione crash Carousel sono stato in grado di leggere queste informazioni:
*** Chiusura di applicazione a causa di eccezione non identificata 'NSInternalInconsistencyException', la ragione: 'è necessario Application. BundleID: ql.ManaEU.watchkitapp appToReplace: Proxy: ql.ManaEU.watchkitapp < (null) non trovato nel database>' termina con eccezione non identificata di tipo NSException abort() chiamato CoreSimulator 191,4 - dispositivo: Apple Osservare - 42mm - Runtime: watchOS 2.0 (13S343) - DeviceType: Apple Watch - 42mm
Hai controllato il registro del dispositivo per un rapporto di arresto anomalo? Se l'estensione del watchkit si bloccava, il sistema l'avrebbe terminata, ma quel tipo di errore non comparirà nella console. –
Si prega di fornire il codice 'getPlaceholderTemplateForComplication', dal momento che questo dipende da" ClockKit' per personalizzare la complicazione del quadrante. –
Ciao, ho modificato la domanda e fornito le informazioni che volevi. –