Expose Objective- C Callback в реагировать нативно с помощью NativeModules - PullRequest
0 голосов
/ 09 февраля 2020

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 в качестве обратного вызова, чтобы при выборе контакта я получал номер телефона в реагировать на родную, как сейчас я получаю выбранный телефон номер в логах.

...