Holen Sie sich iPhone-Handy-Nummer-Etikett aus dem Adressbuch

Also ich habe eine Methode, um alle Telefonnummern aus dem Adressbuch auf dem iPhone, aber es ist ein Weg, um die Telefonnummer-label? Zum Beispiel können Sie dies tun:
Holen Sie sich iPhone-Handy-Nummer-Etikett aus dem Adressbuch

Und ich würde auf der Suche um zu ändern, meine Methode drucken Sie das Etikett (wie iPhone/Home/mobile/etc.).

ABAddressBookRef addressBook = ABAddressBookCreate();
CFArrayRef all = ABAddressBookCopyArrayOfAllPeople(addressBook);
CFIndex n = ABAddressBookGetPersonCount(addressBook);

for( int i = 0 ; i < n ; i++ )
{
    ABRecordRef ref = CFArrayGetValueAtIndex(all, i);
    NSString *firstName = (NSString *)ABRecordCopyValue(ref, kABPersonFirstNameProperty);
    NSLog(@"Name %@", firstName);

    ABMultiValueRef *phones = ABRecordCopyValue(ref, kABPersonPhoneProperty);
    for(CFIndex j = 0; j < ABMultiValueGetCount(phones); j++)
    {
        NSString *phoneLabel = @""; //???

        CFStringRef phoneNumberRef = ABMultiValueCopyValueAtIndex(phones, j);
        //CFRelease(phones);
        NSString *phoneNumber = (NSString *)phoneNumberRef;
        CFRelease(phoneNumberRef);
        NSLog(@"  - %@ (%@)", phoneNumber, phoneLabel);
        [phoneNumber release];
    }
}

InformationsquelleAutor der Frage ingh.am | 2011-03-20

Schreibe einen Kommentar