iOS Get all contact information
Abaddressbookref addressbook = Abaddressbookcreate (); Cfarrayref results = abaddressbookcopyarrayofallpeople (addressbook); for (int i = 0; i < Cfarraygetcount (results); i++) {Abrecordref person = cfarraygetvalueatindex (results, i); Read FirstName NSString *personname = (nsstring*) abrecordcopyvalue (person, kabpersonfirstnameproperty); if (personname! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "n Name:%@n", personname]; Read LastName NSString *lastname = (nsstring*) abrecordcopyvalue (person, kabpersonlastnameproperty); if (LastName! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", LastName]; Read MiddleName nsstring *middlename = (nsstring*) abrecordcopyvalue (person, kabpersonmiddlenameproperty); if (middlename! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", MiddleName]; Read prefix prefix nsstring *prefix = (NSString*) Abrecordcopyvalue (person, kabpersonprefixproperty); if (prefix! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", prefix]; Read suffix suffix nsstring *suffix = (nsstring*) abrecordcopyvalue (person, kabpersonsuffixproperty); if (suffix! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", suffix]; Read nickname called NSString *nickname = (nsstring*) abrecordcopyvalue (person, kabpersonnicknameproperty); if (nickname! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", nickname]; Read FirstName phonetic transcription nsstring *firstnamephonetic = (nsstring*) abrecordcopyvalue (person, Kabpersonfirstnamephoneticprop Erty); if (firstnamephonetic! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", firstnamephonetic]; Read LastName phonetic transcription nsstring *lastnamephonetic = (nsstring*) abrecordcopyvalue (person, kabpersonlastnamephonetic ProperTY); if (lastnamephonetic! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", lastnamephonetic]; Read MiddleName phonetic transcription nsstring *middlenamephonetic = (nsstring*) abrecordcopyvalue (person, Kabpersonmiddlenamepho Neticproperty); if (middlenamephonetic! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", Middlenamephonetic] ; Read Organization company NSString *organization = (nsstring*) abrecordcopyvalue (person, kabpersonorganizationproperty); if (organization! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", organization]; Read JobTitle work NSString *jobtitle = (nsstring*) abrecordcopyvalue (person, kabpersonjobtitleproperty); if (jobtitle! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", JobTitle]; Read Department Department NSString *department = (nsstring*) abrecordcopyvalue (person, kabpersondepartmentproperty); if (department! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", department]; Read Birthday birthday NSDate *birthday = (nsdate*) abrecordcopyvalue (person, kabpersonbirthdayproperty); if (Birthday! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", birthday]; Read Note Memo nsstring *note = (nsstring*) abrecordcopyvalue (person, kabpersonnoteproperty); if (Note! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "%@n", note]; The first time the record was added nsstring *firstknow = (nsstring*) abrecordcopyvalue (person, kabpersoncreationdateproperty); NSLog (@ "The first time the record was added%@n", Firstknow); The last time the record was modified nsstring *lastknow = (nsstring*) abrecordcopyvalue (person, kabpersonmodificationdateproperty); NSLog (@ "Last modified time of the record%@n", Lastknow); Get email multi-value Abmultivalueref email = abrecordcopyvalue (person, kabpersonemailproperty); int Emailcount = abmultivaluegetcount (email); for (int x = 0; x < Emailcount; + +) {//Get email Label nsstring* Emaillabel = (nsstring*) A Baddressbookcopylocalizedlabel (Abmultivaluecopylabelatindex (email, x)); Get Email value nsstring* emailcontent = (nsstring*) abmultivaluecopyvalueatindex (email, x); Textview.text = [Textview.text stringbyappendingformat:@ "%@:%@n", emaillabel,emailcontent]; }//Read address multi-value abmultivalueref addressing = Abrecordcopyvalue (person, kabpersonaddressproperty); int count = Abmultivaluegetcount (address); for (int j = 0; J < Count; J + +) {//Get Address label nsstring* Addresslabel = (nsstring*) Abmultiva Luecopylabelatindex (address, j); Textview.text = [Textview.text stringbyappendingformat:@ "%@n", Addresslabel]; Get the address under the Label 6 property nsdictionary* personaddress = (nsdictionary*) Abmultivaluecopyvalueatindex (address, j); nsstring* country = [personaddress valueforkey: (NSString *) Kabpersonaddresscountrykey]; if (country! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "Country:%@n", country]; nsstring* City = [personaddress valueforkey: (NSString *) Kabpersonaddresscitykey]; if (city = nil) Textview.text = [Textview.text stringbyappendingformat:@ "Cities:%@n", urban]; nsstring* state = [personaddress valueforkey: (NSString *) Kabpersonaddressstatekey]; if (state = nil) Textview.text = [Textview.text stringbyappendingformat:@ "province:%@n", State]; nsstring* Street = [personaddress valueforkey: (NSString *) Kabpersonaddressstreetkey]; if (street! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "Street:%@n", street]; nsstring* zip = [personaddress valueforkey: (NSString *) Kabpersonaddresszipkey]; if (zip = nil) textview.text = [Textview.text stringbyappendingformat:@ "ZIP code:%@n", zip]; nsstring* Coutntrycode = [personaddress valueforkey: (NSString *) Kabpersonaddresscountrycodekey]; if (coutntrycode! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "Country code:%@n", Coutntrycode]; }//Get dates Multi-value abmultivalueref dates = Abrecordcopyvalue (person, kabpersondateproperty); int datescount = Abmultivaluegetcount (dates); for (int y = 0; y < Datescount; y++) {//Get dates Label nsstring* Dateslabel = (nsstring*) A Baddressbookcopylocalizedlabel (Abmultivaluecopylabelatindex (dates, y)); Gets the dates value nsstring* datescontent = (nsstring*) abmultivaluecopyvalueatindex (dates, y); Textview.text = [Textview.text stringbyappendingformat:@ "%@:%@n", dateslabel,datescontent]; }//Get kind value cfnumberref RecordType = Abrecordcopyvalue (person, Kabpersonkindproperty); if (RecordType = = kabpersonkindorganization) {//it ' s a company NSLog (@ "It's a Companyn"); } else {//it ' s a person, resource, or NSLog (@ "It's a person, resource, or roomn"); }//Get IM Multi-valued abmultivalueref instantmessage = Abrecordcopyvalue (person, KABPERSONINSTANTMESSAG Eproperty); for (int l = 1; l < Abmultivaluegetcount (instantmessage); l++) {//Get IM Label nsstring* in Stantmessagelabel = (nsstring*) abmultivaluecopylabelatindex (Instantmessage, L); Textview.text = [Textview.text stringbyappendingformat:@ "%@n", Instantmessagelabel]; Gets the 2 property under the label nsdictionary* instantmessagecontent = (nsdictionary*) abmultivaluecopyvalueatindex (InstantMessag E, L); nsstring* username = [Instantmessagecontent valueforkey: (NSString *) Kabpersoninstantmessageusernamekey]; if (username! = nil) teXtview.text = [Textview.text stringbyappendingformat:@ "Username:%@n", username]; nsstring* service = [instantmessagecontent valueforkey: (NSString *) Kabpersoninstantmessageservicekey]; if (service! = nil) Textview.text = [Textview.text stringbyappendingformat:@ "Service:%@n", service]; }//Read phone multi-value Abmultivalueref phone = abrecordcopyvalue (person, kabpersonphoneproperty); for (int k = 0; K<abmultivaluegetcount (phone); k++) {//Get Phone label NSString * PERSONP Honelabel = (nsstring*) Abaddressbookcopylocalizedlabel (Abmultivaluecopylabelatindex (phone, k)); Get the phone value under the label NSString * Personphone = (nsstring*) abmultivaluecopyvalueatindex (phone, k); Textview.text = [Textview.text stringbyappendingformat:@ "%@:%@n", Personphonelabel,personphone]; }//Get URL multi-value abmultivalueref URL = abrecordcopyvalue (person, Kabpersonurlproperty); for (int m = 0; m < abmultivaluegetcount (URL); m++) {//Get Phone label NSString * URLLabel = (N sstring*) Abaddressbookcopylocalizedlabel (Abmultivaluecopylabelatindex (URL, m)); Gets the phone value under the label NSString * urlcontent = (nsstring*) abmultivaluecopyvalueatindex (url,m); Textview.text = [Textview.text stringbyappendingformat:@ "%@:%@n", urllabel,urlcontent]; }//Read photo NSData *image = (nsdata*) abpersoncopyimagedata (person); Uiimageview *myimage = [[Uiimageview alloc] Initwithframe:cgrectmake (200, 0, 50, 50)]; [MyImage setimage:[uiimage imagewithdata:image]; Myimage.opaque = YES; [TextView Addsubview:myimage]; } cfrelease (results); Cfrelease (AddressBook);