相关疑难解决方法(0)

iOS EKEvent Store在循环中重新创建iCloud日历,不会保存本地.

我有一个奇怪的问题EKEventStore,iCloud和本地日历.如果启用了iCloud,则会创建日历并将事件保存到日历中,如您所料.如果iCloud关闭并且您尝试保存事件没有任何反应,则设备会每隔3-5秒继续创建一个循环中的iCloud日历,直到iCloud重新打开,然后所有这些日历都会作为重复内容涌入iCloud.我正在使用几乎所有在这里引用的确切代码以及Apples Docs.我完全难以理解为什么它不起作用,而且一般来说EKEventStore上的文档似乎很少.

//••••••••••••••••••••••••••••••••••••••• pragma mark - 保存事件//•••••••••••••••••••••••••••••••••••••••••• ••••

-(void)saveEventWithDate:(NSDate *)startDate endDate:(NSDate *)endDate
{
    AppData *theData = [self theAppData];

    if([self checkIsDeviceVersionHigherThanRequiredVersion:@"6.0"]) {
        [eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) { // iOS 6 Support

            if (granted){
                NSLog(@"Access Granted");
            } else {
                NSLog(@"Access Not Granted");
            }

        }];
    }

    EKEvent *event  = [EKEvent eventWithEventStore:eventStore];

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

    if ([eventStore calendarWithIdentifier:[defaults objectForKey:@"My Calendar"]] != nil) // Calendar Existed
    {
        event.calendar  = [eventStore calendarWithIdentifier:[defaults objectForKey:@"My Calendar"]];
        NSLog(@"Calendar Existed");

    } else { // Create Calendar …
Run Code Online (Sandbox Code Playgroud)

ios ekeventkit ekeventstore

5
推荐指数
2
解决办法
4467
查看次数

标签 统计

ekeventkit ×1

ekeventstore ×1

ios ×1