繁体   English   中英

以编程方式从iOS应用程序添加与自定义标签的联系人与Outlook帐户同步的设备通讯簿

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM