iPhone取得用戶的電話本代碼

字號(hào):


    //取得用戶的電話本 代碼
    -(void)getUserAddressBook{
    //reDic = {"7":"數(shù)碼先鋒","1":"最愛街拍"} //打開電話本數(shù)據(jù)庫
    ABAddressBookRef addressRef=ABAddressBookCreate();
    //返回所有聯(lián)系人到一個(gè)數(shù)組中
    CFArrayRef personArray = ABAddressBookCopyArrayOfAllPeople(addressRef);
    NSMutableDictionary *jsonDictionary = [[NSMutableDictionary alloc]init];
    //循環(huán)讀取每個(gè)聯(lián)系人
    for (int i =0;i< p>
    //得到當(dāng)前聯(lián)系人
    ABRecordRef personRef=CFArrayGetValueAtIndex(personArray, i); //==============================================================================
    CFStringRef firstname=ABRecordCopyValue(personRef, kABPersonFirstNameProperty);
    CFStringRef lastname=ABRecordCopyValue(personRef, kABPersonLastNameProperty);
    //CFStringRef userPhone = ABRecordCopyValue(personRef,kABPersonPhoneProperty );
    NSString *allName;if([firstname isEqualToString:@""]||firstname==nil){if([lastname isEqualToString:@""]||lastname==nil){
    allName=@"空";
    }
    }else if([lastname isEqualToString:@""]||lastname==nil){allName=[NSString stringWithFormat:@"];
    }else if([firstname isEqualToString:@""]||firstname==nil){allName=[NSString stringWithFormat:@">];
    }else{
    allName=[NSString stringWithFormat:@"];
    } // NSLog(@"); //============================================================================== // NSLog(@"); //用于循環(huán)計(jì)數(shù) int j; //用于保存有多項(xiàng)的屬性值 ABMultiValueRef values ; //==============================================================================
    //循環(huán)讀出該項(xiàng)的所有值,如果需要修改讀出其它具有多項(xiàng)值的屬性,只需修改KAB...Property //具有多項(xiàng)值的屬性有電話,地址,email
    values = (ABMultiValueRef) ABRecordCopyValue(personRef , kABPersonPhoneProperty);
    //NSLog(@");
    NSString *getPhoneNum;
    for(j = 0 ;j < ABMultiValueGetCount(values); j++) {
    getPhoneNum = [NSString stringWithFormat:@"%@", (NSString *)ABMultiValueCopyValueAtIndex(values, j)]; }if(ABMultiValueGetCount(values)==0){
    getPhoneNum=@"空";
    }//NSLog(@"); // values = (ABMultiValueRef) ABRecordCopyValue(personRef , kABPersonEmailProperty);// for( j = 0 ;j < ABMultiValueGetCount(values); j++)// { // NSLog(@"1-%@", (NSString *)ABMultiValueCopyValueAtIndex(values, j));// // }// // values = (ABMultiValueRef) ABRecordCopyValue(personRef , kABPersonAddressProperty);// for( j = 0 ;j < ABMultiValueGetCount(values); j++)// { // NSLog(@"2-%@", (NSString *)ABMultiValueCopyValueAtIndex(values, j));// // }[jsonDictionary setObject:getPhoneNum forKey:allName] ; //============================================================================== }
    //NSLog(@"); NSString *str = [jsonDictionary JSONRepresentation];NSLog(@"); // NSString *d = [str JSONValue];[jsonDictionary release];
    // NSString *str = [jsonDictionary JSONRepresentation];// NSMutableDictionary *d = [jsonDictionary JSONValue];// NSLog(@"%@" , [d description]); // [dlist release];//NSLog(@");}