Я пытаюсь получить только адрес для всех контактов в CNContacts. Мне удалось получить заданное имя и имя семьи в виде NSString, и я смог получить почтовый адрес в виде массива с улицей, городом, почтовым индексом и т. д., но я хотел бы получить только адрес улицы из массива в виде строки .
Вот мой код
CNContactStore *store = [[CNContactStore alloc] init];
[store requestAccessForEntityType:CNEntityTypeContacts completionHandler:^(BOOL granted, NSError * _Nullable error) {
if (granted == YES) {
//keys with fetching properties
NSArray *keys = @[CNContactFamilyNameKey, CNContactGivenNameKey, CNContactPostalAddressesKey,CNPostalAddressStreetKey,CNPostalAddressCityKey,CNPostalAddressPostalCodeKey];
NSString *containerId = store.defaultContainerIdentifier;
NSPredicate *predicate = [CNContact predicateForContactsInContainerWithIdentifier:containerId];
NSError *error;
NSArray *cnContacts = [store unifiedContactsMatchingPredicate:predicate keysToFetch:keys error:&error];
if (error) {
NSLog(@"error fetching contacts %@", error);
} else {
for (CNContact *contact in cnContacts) {
NSString *firstNames = contact.givenName;
NSString *lastNames = contact.familyName;
NSMutableArray *streetName = [[NSMutableArray alloc]initWithObjects:contact.postalAddresses, nil];
NSLog(@"streets:::%@",streetName); }}}}];
Я использую Objective-c, и есть несколько примеров со Swift, но не с Objc. Может кто-нибудь показать мне, как это сделать, пожалуйста.