ABAddressBookCopyArrayOfAllPeopleInSource возвращает объект "0"?

Я пытаюсь получить контакты для конкретного источника, но он возвращает мне 0 объектов.

Как вы видите, если у источника есть Группы, он будет добавлен в массив, но если нет групп, мне просто нужно знать количество контактов в этом источнике "Например, Google,Facebook,.."

for (CFIndex i = 0; i < CFArrayGetCount(allSources); i++)
    {
        ABRecordRef aSource = CFArrayGetValueAtIndex(allSources,i);

        // Fetch all groups included in the current source
        CFArrayRef result = ABAddressBookCopyArrayOfAllGroupsInSource (myAddressBook, aSource);

        // The app displays a source if and only if it contains groups
        if (CFArrayGetCount(result) > 0)
        {
            NSMutableArray *groups = [[NSMutableArray alloc] initWithArray:(NSArray *)result];

            // Fetch the source name
            NSString *sourceName = [self nameForSource:aSource];
            //Create a MySource object that contains the source name and all its groups
            MySource *source = [[MySource alloc] initWithAllGroups:groups name:sourceName];

            // Save the source object into the array
            [list addObject:source];
            [source release];
            [groups release];
        }
        else
        {

            CFArrayRef result= ABAddressBookCopyArrayOfAllPeopleInSource(myAddressBook, aSource);

        }

        CFRelease(result);
    }

0 ответов

Другие вопросы по тегам