Что означает эта ошибка (при модификации события)?

Привет всем, я использую приведенный ниже код для создания события:

EKEvent *oneLabEvent = [EKEvent eventWithEventStore:eventStore];

oneLabEvent.calendar = eventStore.defaultCalendarForNewEvents;
oneLabEvent.title = [ddEvent valueForKey:@"ddname"];
oneLabEvent.allDay = NO;

oneLabEvent.startDate = [ddEvent valueForKey:@"startDate"];
oneLabEvent.endDate = [ddEvent valueForKey:@"endDate"];


//setting the alarm for the event

EKAlarm * alarm = [EKAlarm alarmWithRelativeOffset:0];
oneLabEvent.alarms = [NSArray arrayWithObject:alarm];

//setting the Reuccurence rule
EKRecurrenceRule * recurrenceRule = [[EKRecurrenceRule alloc] 
                                     initRecurrenceWithFrequency:EKRecurrenceFrequencyMonthly
                                     interval:1
                                     end:nil];
if (oneLabEvent.endDate != nil) {
    EKRecurrenceEnd * end = [EKRecurrenceEnd recurrenceEndWithEndDate:oneLabEvent.endDate];
    recurrenceRule.recurrenceEnd = end;
}else {
    oneLabEvent.endDate = oneLabEvent.startDate;
}



oneLabEvent.recurrenceRule = recurrenceRule;
[recurrenceRule release];

NSError *error;

BOOL saved = [eventStore saveEvent:oneLabEvent span:EKSpanThisEvent error:&error];
if (!saved && error) {
    NSLog(@"Error while saving the event:%@",[error localizedDescription]);
}

[ddEvent setValue:oneLabEvent.eventIdentifier forKey:@"eventID"];

в моем телефоне это работает как шарм, но когда друг в своем iphone пытается изменить событие, он получает эту ошибку.

замещающий текст http://img208.imageshack.us/img208/8850/photot.png< /а>

Теперь может ли кто-нибудь сказать мне, что что-то не так с моим кодом или есть ли какие-либо настройки календаря, которые могут отличаться от моего телефона и телефона друга.


person harshalb    schedule 14.08.2010    source источник
comment
Каковы даты начала и окончания? Похоже, событие занимает больше времени, чем интервал повторения... Может быть, проверить годы.   -  person Eiko    schedule 14.08.2010
comment
вы можете увидеть дату начала и окончания на изображении выше. это не правильно, но вы можете видеть это, хотя. но в айфоне нет проблем с модификациями.   -  person harshalb    schedule 14.08.2010
comment
начало - 14 августа, повтор - ежемесячно, интервал - 1, окончание повтора - 14 августа 2023 г.   -  person harshalb    schedule 14.08.2010
comment
Пожалуйста, смотрите мой ответ и отлаживайте :-)   -  person Eiko    schedule 14.08.2010


Ответы (1)


Ваши даты начала и окончания относятся к разным годам. 14 августа в этом году – суббота, но дата окончания – сегодня – 14 августа.

Итак, это из другого года, что делает его длиннее одного месяца, который является вашим интервалом повторения.

person Eiko    schedule 14.08.2010
comment
да, я проверил это, но когда я делаю те же настройки на своем телефоне, он не вызывает никаких ошибок и принимает как есть. - person harshalb; 14.08.2010
comment
Даты неверны... и они должны откуда-то взяться. В разделе повторов указано, что 14 августа 2023 года — понедельник. Возможно, это связано, и вам каким-то образом удалось заполнить event.endDate этим значением. - person Eiko; 14.08.2010