0
我正在開發一個應用程序,當用戶添加任何事件作爲他的最愛時,我將該事件添加到iCal,但如果用戶從他的最愛中刪除該特定事件,我如何從iCal中刪除該事件。如何刪除從我的應用程序添加的iCal事件?
這裏是我的代碼:
NSDate *date = [NSDate dateWithTimeIntervalSince1970:[[self.parentDetailArray valueForKey:@"start_time_num"] intValue]];
NSDateFormatter *dateformatter=[[NSDateFormatter alloc]init];
[dateformatter setLocale:[NSLocale currentLocale]];
[dateformatter setDateFormat:@"dd-MM-yyyy"];
NSString *dateString=[dateformatter stringFromDate:date];
EKEventStore *eventStore = [[EKEventStore alloc] init];
if([eventStore respondsToSelector:@selector(requestAccessToEntityType:completion:)])
{
[eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (granted){
//---- codes here when user allow your app to access theirs' calendar.
EKEvent *event = [EKEvent eventWithEventStore:eventStore];
event.title = title;
event.startDate = date;
event.endDate = [[NSDate alloc] initWithTimeInterval:1000 sinceDate:event.startDate];
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
NSError *err;
[eventStore saveEvent:event span:EKSpanThisEvent error:&err];
// Here I'm trying to get the identifier of that event but m getting only (null)
self.str = [[NSString alloc] initWithFormat:@"%@", event.eventIdentifier];
[self.arrayofEventId addObject:self.str];
//[self performCalendarActivity:eventStore];
}else
{
//----- codes here when user NOT allow your app to access the calendar.
}
}];
}
else {
//---- codes here for IOS < 6.0.
EKEvent *event = [EKEvent eventWithEventStore:eventStore];
event.title = @"Testing for calendar";
event.startDate = [[NSDate alloc] init];
NSLog(@"%@",event.startDate);
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
NSError *err;
[eventStore saveEvent:event span:EKSpanThisEvent error:&err];
//[self performCalendarActivity:eventStore];
}
我如何得到事件標識符ñ刪除iCal中的特定事件。任何幫助,將不勝感激。
我已經將所有事件ID存儲在一個可變數組中,並且將該數組存儲到文件中,以便我可以跟蹤由我的應用程序添加的所有事件。但是當我使用這個刪除方法時,它會在控制檯中給我這個消息。 「操作無法完成(Mach錯誤268435459 - (ipc/send)無效目標端口)。 – Zac24