Как да получите доставчик на календар (Google, Apple, Yahoo и др.) от EKEventStore

Изтеглям календарите, които са синхронизирани на устройство с рамката EventKit и получавам заглавието на календара [email protected] в обект EKCalendar, което е страхотно! Но трябва да знаем кой е доставчикът на услуги за този акаунт. wW има, ако суфиксът е "@gmail.com", така че да знаем, че това е акаунт в Google, но може да бъде и акаунт в Google с "@mycoolsite.com". И така, какво правим тук? Как всъщност можем да извлечем доставчика на услугата от системата?

Ето как получаваме заглавието на акаунта:

    EKEventStore * eventStore = [[EKEventStore alloc] init];
NSMutableArray*calendars = [[NSMutableArray alloc]init];
[eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
    if (granted)
    {
        dispatch_async(dispatch_get_main_queue(), ^{
            NSArray * accountsArray = [eventStore calendarsForEntityType:EKEntityTypeEvent];// ios 6 ^


            for (int i = 0; i < [accountsArray count]; i++) {
                NSString *cal = [[accountsArray objectAtIndex:i] valueForKey:@"title"];
                if ([cal rangeOfString:@"@"].location != NSNotFound) {
                    [calendars addObject:[[accountsArray objectAtIndex:i] valueForKey:@"title"]];
                }
            }
            [self gotCalendars:calendars];
        });
    }

person or azran    schedule 28.08.2013    source източник


Отговори (1)


Не можете наистина да намерите доставчика на услугата, можете да откриете вида на използваната услуга, като погледнете sourceType в EKSource.

person rckoenes    schedule 28.08.2013