- (void)viewdidload
#pragma mark - 獲取系統通訊錄
- (void)getaddressbookarray
); // 請求訪問的使用者位址薄資料
dispatch_semaphore_wait(sema,
dispatch_time_forever
); //
等待乙個訊號量
}else
// 獲取通訊錄中所有的人
cfarrayrefallperson = abaddressbookcopyarrayofallpeople(addressbooks);
// 通訊錄中的人數
cfindexnperson = abaddressbookgetpersoncount(addressbooks);
// 迴圈,獲取每個人的個人資訊
for (nsinteger i = 0; i < nperson; i++) else
}addressbook.name = namestring;
addressbook.recordid = (int)abrecordgetrecordid(person);
abpropertyid multiproperties = ;
nsinteger multipropertiestotal = sizeof(multiproperties)/sizeof(abpropertyid);
// ???
for (nsinteger j = 0; j < multipropertiestotal; j++)
// 獲取**號碼和email
for (nsinteger k = 0; k < valuescount; k++)
case 1: // email
default:
break;
}cfrelease(value);
}cfrelease(valueref); //
幹什麼用的? }
// 將個人資訊新增到陣列中,迴圈完成後addressbooktemp中包含所有聯絡人的資訊
[self.addressbookarray
addobject:addressbook];
if (abname) cfrelease(abname);
if (ablastname) cfrelease(ablastname);
if (abfullname) cfrelease(abfullname);}}
#pragma mark - table view data source
- (nsinteger)numberofsectionsintableview:(uitableview *)tableview
- (nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section
- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath
-(void)tableview:(uitableview *)tableview diddeselectrowatindexpath:(nsindexpath *)indexpath
android系統 通訊錄路徑
在 data data com.android.providers.contacts存放了通訊錄的資訊,其中資料庫是採用sqlite。data data com.android.providers.包含了android自帶的一些功能。com.android.providers.calendar是日曆...
iOS 讀取系統通訊錄
ios 讀取系統通訊錄 備註 1.在ios6.0以上通迅錄第一次讀取時,需要使用者授權 會自動彈出授權提示框 授權同意則可以讀取通訊錄,如果不同意則無法讀取通訊錄。2.一旦授權後,以後將一直按照使用者授權 同意或不同意 進行操作,不會再次彈出授權提示框,每個應用都只有1次機會可以彈出通訊錄授權提示框...
iOS 呼叫通訊錄資訊
abauthorizationstatus status abaddressbookgetauthorizationstatus 判斷授權狀態 if status kabauthorizationstatusnotdetermined else else if status kabauthoriza...