[英]Add Contact with custom label programmatically from an iOS App To device Address Book which is synched with Outlook Account
我想从我的iOS应用程序添加自定义标签(例如:单元格,私有等)的联系信息到设备本地地址簿。 我是用ABAddressBookRef做的。
在我将联系人与Outlook帐户同步后,每当我从App添加联系人到地址簿时,它都不允许我在iPhone中添加自定义标签的联系人(以编程方式和手动方式)。
当我添加联系人时,自定义标签Cell被默认标签home替换为电话号码。
几乎所有的应用用户都拥有Outlook帐户。 任何人都可以建议我这个解决方案。有没有办法以编程方式识别设备默认值设置为outlook?
您可以使用以下代码为任何电话号码添加自定义标签 -
CFErrorRef error = NULL;
ABAddressBookRef iPhoneAddressBook = ABAddressBookCreate();
ABRecordRef newPerson = ABPersonCreate();
ABRecordSetValue(newPerson, kABPersonFirstNameProperty, @"Gill", &error);
const CFStringRef customLabel = CFSTR( "Enter any label here" );
ABMutableMultiValueRef customPhone = ABMultiValueCreateMutable(kABMultiStringPropertyType);
ABMultiValueAddValueAndLabel(customPhone, @"1-555-555-555", customLabel, NULL);
ABRecordSetValue(newPerson, kABPersonPhoneProperty, customPhone,nil);
CFRelease(customPhone);
ABAddressBookAddRecord(iPhoneAddressBook, newPerson, &error);
ABAddressBookSave(iPhoneAddressBook, &error);
if (error != NULL)
{
NSLog(@"Error!");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.