IOS Доступ к нативному контакту в нативном режиме с использованием NativeModules. Я должен отправить выбранный контактный номер в качестве обратного вызова или выставить выбранный контактный номер в реагировать родной. Это код, который я использовал до сих пор
#import <Foundation/Foundation.h>
#import "React/RCTBridgeModule.h"
@import Contacts;
@import ContactsUI;
@interface ViewController () <CNContactPickerDelegate>
@end
//inherit a react method
@interface ViewController () <RCTBridgeModule>
@end
@implementation ViewController
RCT_EXPORT_MODULE();
RCT_EXTERN_METHOD(getContacts);
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)getContacts {
CNContactPickerViewController *contactPicker = [CNContactPickerViewController new];
contactPicker.delegate = self;
[[[[UIApplication sharedApplication] delegate] window] rootViewController] presentViewController:
contactPicker animated:YES completion:nil]
}
- (void) contactPicker:(CNContactPickerViewController *)picker
didSelectContact:(CNContact *)contact {
[self getContactDetails:contact];
}
-(void)getContactDetails:(CNContact *)contactObject {
NSString * phone = @"";
NSString * userPHONE_NO = @"";
for(CNLabeledValue * phonelabel in contactObject.phoneNumbers) {
CNPhoneNumber * phoneNo = phonelabel.value;
phone = [phoneNo stringValue];
if (phone) {
userPHONE_NO = phone;
}}
NSLog(@"PHONE NO :: %@",userPHONE_NO);
}
@end
Мне нужно выставить getContactDetails в качестве обратного вызова, чтобы при выборе контакта я получал номер телефона в реагировать на родную, как сейчас я получаю выбранный телефон номер в логах.