IOS 獲取通訊錄

1.設(shè)置 info.plist 的Privacy - Contacts Usage Description

2.導(dǎo)入頭文件

#import <Contacts/Contacts.h>

3.通過代碼獲取

//請(qǐng)求通訊錄權(quán)限#pragmamark 請(qǐng)求通訊錄權(quán)限

- (void)requestContactAuthorAfterSystemVersion9{


? ? CNAuthorizationStatus status = [CNContactStore authorizationStatusForEntityType:CNEntityTypeContacts];

? ? if (status == CNAuthorizationStatusNotDetermined) {

? ? ? ? CNContactStore *store = [[CNContactStore alloc] init];

? ? ? ? [storerequestAccessForEntityType:CNEntityTypeContacts completionHandler:^(BOOL granted, NSError*? _Nullable error) {

? ? ? ? ? ? if(error) {

? ? ? ? ? ? ? ? NSLog(@"授權(quán)失敗");

? ? ? ? ? ? }else{

? ? ? ? ? ? ? ? NSLog(@"成功授權(quán)");

? ? ? ? ? ? }

? ? ? ? }];

? ? }

? ? else if(status == CNAuthorizationStatusRestricted)

? ? {

? ? ? ? NSLog(@"用戶拒絕");

? ? ? ? [self showAlertViewAboutNotAuthorAccessContact];

? ? }

? ? else if (status == CNAuthorizationStatusDenied)

? ? {

? ? ? ? NSLog(@"用戶拒絕");

? ? ? ? [self showAlertViewAboutNotAuthorAccessContact];

? ? }

? ? else if (status == CNAuthorizationStatusAuthorized)//已經(jīng)授權(quán)

? ? {

? ? ? ? //有通訊錄權(quán)限-- 進(jìn)行下一步操作

? ? ? ? [selfopenContact];

? ? }


}

//有通訊錄權(quán)限-- 進(jìn)行下一步操作

- (void)openContact{

?// 獲取指定的字段,并不是要獲取所有字段峻汉,需要指定具體的字段

? ? NSArray *keysToFetch = @[CNContactGivenNameKey, CNContactFamilyNameKey, CNContactPhoneNumbersKey];

? ? CNContactFetchRequest *fetchRequest = [[CNContactFetchRequest alloc] initWithKeysToFetch:keysToFetch];

? ? CNContactStore*contactStore = [[CNContactStorealloc]init];


? ? [contactStoreenumerateContactsWithFetchRequest:fetchRequesterror:nilusingBlock:^(CNContact*_Nonnullcontact,BOOL*_Nonnullstop) {

? ? ? ? NSLog(@"-------------------------------------------------------");


? ? ? ? NSString*givenName = contact.givenName;

? ? ? ? NSString*familyName = contact.familyName;

? ? ? ? ? NSLog(@"givenName=%@, familyName=%@", givenName, familyName);

? ? ? ? //拼接姓名

? ? ? ? NSString*nameStr = [NSStringstringWithFormat:@"%@%@",contact.familyName,contact.givenName];


? ? ? ? NSArray*phoneNumbers = contact.phoneNumbers;


? ? ? ? //? ? ? ? CNPhoneNumber? * cnphoneNumber = contact.phoneNumbers[0];


? ? ? ? //? ? ? ? NSString * phoneNumber = cnphoneNumber.stringValue;


? ? ? ? for(CNLabeledValue*labelValueinphoneNumbers) {

? ? ? ? //遍歷一個(gè)人名下的多個(gè)電話號(hào)碼

? ? ? ? ? ? ? ? NSString*label = labelValue.label;

?? ? ? ? //? NSString *? ? phoneNumber = labelValue.value;

? ? ? ? ? ? CNPhoneNumber*phoneNumber = labelValue.value;


? ? ? ? ? ? NSString* string = phoneNumber.stringValue;


? ? ? ? ? ? //去掉電話中的特殊字符

? ? ? ? ? ? string = [stringstringByReplacingOccurrencesOfString:@"+86" withString:@""];

? ? ? ? ? ? string = [stringstringByReplacingOccurrencesOfString:@"-" withString:@""];

? ? ? ? ? ? string = [stringstringByReplacingOccurrencesOfString:@"(" withString:@""];

? ? ? ? ? ? string = [stringstringByReplacingOccurrencesOfString:@")" withString:@""];

? ? ? ? ? ? string = [stringstringByReplacingOccurrencesOfString:@" " withString:@""];

? ? ? ? ? ? string = [stringstringByReplacingOccurrencesOfString:@" " withString:@""];


? ? ? ? NSLog(@"姓名=%@, 電話號(hào)碼是=%@", nameStr, string);




? ? ? ? }


? ? ? ? //? ? *stop = YES; // 停止循環(huán)皮仁,相當(dāng)于break星著;


? ? }];

}

//提示沒有通訊錄權(quán)限

- (void)showAlertViewAboutNotAuthorAccessContact{


? ? UIAlertController *alertController = [UIAlertController

? ? ? ? alertControllerWithTitle:@"請(qǐng)授權(quán)通訊錄權(quán)限"

? ? ? ? message:@"請(qǐng)?jiān)趇Phone的\"設(shè)置-隱私-通訊錄\"選項(xiàng)中,允許花解解訪問你的通訊錄"

? ? ? ? preferredStyle: UIAlertControllerStyleAlert];

? ? UIAlertAction *OKAction = [UIAlertAction actionWithTitle:@"好的" style:UIAlertActionStyleDefault handler:nil];

? ? [alertControlleraddAction:OKAction];

? ? [self presentViewController:alertController animated:YES completion:nil];

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末错英,一起剝皮案震驚了整個(gè)濱河市闸天,隨后出現(xiàn)的幾起案子放妈,更是在濱河造成了極大的恐慌诡曙,老刑警劉巖谁不,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件钠导,死亡現(xiàn)場(chǎng)離奇詭異震嫉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)牡属,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門票堵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人逮栅,你說我怎么就攤上這事悴势。” “怎么了措伐?”我有些...
    開封第一講書人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵特纤,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我侥加,道長(zhǎng)捧存,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮昔穴,結(jié)果婚禮上镰官,老公的妹妹穿的比我還像新娘。我一直安慰自己傻咖,他們只是感情好朋魔,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著卿操,像睡著了一般警检。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上害淤,一...
    開封第一講書人閱讀 50,050評(píng)論 1 291
  • 那天扇雕,我揣著相機(jī)與錄音,去河邊找鬼窥摄。 笑死镶奉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的崭放。 我是一名探鬼主播哨苛,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼币砂!你這毒婦竟也來了建峭?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬榮一對(duì)情侶失蹤决摧,失蹤者是張志新(化名)和其女友劉穎亿蒸,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體掌桩,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡边锁,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了波岛。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片茅坛。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖盆色,靈堂內(nèi)的尸體忽然破棺而出灰蛙,到底是詐尸還是另有隱情,我是刑警寧澤隔躲,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站物延,受9級(jí)特大地震影響宣旱,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叛薯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一浑吟、第九天 我趴在偏房一處隱蔽的房頂上張望笙纤。 院中可真熱鬧,春花似錦组力、人聲如沸省容。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽腥椒。三九已至,卻和暖如春候衍,著一層夾襖步出監(jiān)牢的瞬間笼蛛,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來泰國(guó)打工蛉鹿, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留滨砍,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓妖异,卻偏偏與公主長(zhǎng)得像惋戏,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子他膳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容

  • 獲取手機(jī)通訊錄導(dǎo)入Contacts/Contacts 這個(gè)庫(kù), 不帶UI 導(dǎo)入ContactsUI/Contact...
    冬日的太陽_c107閱讀 1,081評(píng)論 0 0
  • day12——面向?qū)ο?一响逢、上周知識(shí)點(diǎn)回顧 1、分支矩乐、循環(huán)語句 if語句龄句,switch語句 for語句,while...
    機(jī)會(huì)留給有準(zhǔn)備的人閱讀 227評(píng)論 0 0
  • 每天在家里散罕,大門不出二門不邁分歇,手機(jī)都是放屋子里,天黑一看運(yùn)動(dòng)步數(shù)欧漱,有時(shí)候一百不到职抡。這個(gè)時(shí)代,還真應(yīng)了我這種懶...
    簡(jiǎn)單去愛靜待花開閱讀 113評(píng)論 0 1
  • Flask打造個(gè)人博客系列,今天是第一篇误甚,我們?cè)敿?xì)講解登錄缚甩,注冊(cè)模塊。 既然是Flask來開發(fā)窑邦,你得: 安裝 實(shí)現(xiàn)...
    Thinkbigger閱讀 1,533評(píng)論 2 50
  • 昨晚1:30睡覺擅威,今天10:00起床。作息在向著好的方向發(fā)展冈钦,重要的是盡量不要睡午覺郊丛,否則又是新一輪的凌晨眾人皆醉...
    d11110d0172b閱讀 75評(píng)論 0 0