簡體   English   中英

無法正常工作將號碼添加到ios 11中的現有聯系人

[英]Not working add number to existing contacts in ios 11

我想在現有聯系人中添加電話號碼。 此代碼可在iOS8中完美運行,但不適用於iOS11。 沒有收到任何錯誤,但是當ABNewPersonViewController打開時,我看不到新的電話號碼。

-(void)addToExstingContact{

    ABPeoplePickerNavigationController *personPicker = [[ABPeoplePickerNavigationController alloc] init];
    personPicker.peoplePickerDelegate = self;

    [self presentViewController:personPicker animated:true completion:nil];
}

-(void)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker didSelectPerson:(ABRecordRef)person{

    [peoplePicker dismissViewControllerAnimated:true completion:^{

        ABMultiValueRef phoneNumbers = ABRecordCopyValue(person, kABPersonPhoneProperty);
        ABMutableMultiValueRef phoneNumberMultiValue = ABMultiValueCreateMutableCopy(phoneNumbers);
        ABMultiValueAddValueAndLabel(phoneNumberMultiValue, (__bridge CFTypeRef)(newPhoneNumber), kABPersonPhoneMainLabel, NULL);

        ABRecordSetValue(person, kABPersonPhoneProperty, phoneNumberMultiValue, nil);
        CFRelease(phoneNumberMultiValue);

        ABNewPersonViewController *view = [[ABNewPersonViewController alloc] init];
        view.newPersonViewDelegate = self;
        view.displayedPerson = person;

        UINavigationController *newNavigationController = [[UINavigationController alloc] initWithRootViewController:view];
        [self presentViewController:newNavigationController animated:true completion:nil];
    }];
}

- (void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker{
    [peoplePicker dismissViewControllerAnimated:true completion:nil];
}

引用文檔:

iOS 9中不建議使用通訊簿UI框架。請改用ContactsUI框架中定義的API。 要了解更多信息,請參見ContactsUI

也許您應該將此代碼重寫為contacts框架以使其在11上運行?

例如: https//www.appsfoundation.com/post/create-edit-contacts-with-ios-9-contacts-ui-framework

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM