我的目标是允许用户使用标准UI(ABPersonViewController)创建联系人,但让他们选择将其添加到地址簿或将其存储在本地(在我的CoreData数据库中).因此,我需要执行以下操作之一:将ABRecord的副本作为NSData存储在我自己的数据库中,并始终处理该副本。存储ABRecord(电子名片、专有格式等...)的表示,并在用户想要编辑联系人时与该表示进行转换(以便向ABRecord提供ABRecordABPersonViewController)。我的问题是我想不出一种方法来创建记录而不将它们添加到用户的地址簿中。一些背景在iOS地址簿编程指南(linkhere)中
问题当我尝试使用损坏的vCard数据通过ABPersonCreatePeopleInSourceWithVCardRepresentation()创建一个ABPerson时,我的应用程序崩溃了。这是控制台输出:2012-07-1420:20:37.530vCardTest[4418:707]vCardSyntaxError,character:7:/2012-07-1420:20:37.531vCardTest[4418:707]MalformedBEGIN2012-07-1420:20:37.534vCardTest[4418:707]vCardSyntaxError,charact
我正在尝试实现funcpersonViewController(personViewController:ABPersonViewController!,shouldPerformDefaultActionForPersonperson:ABRecord!,propertyproperty:ABPropertyID,identifiervalueIdentifier:ABMultiValueIdentifier)->Bool函数,它是ABPersonViewControllerDelegate的一部分协议(protocol),每当用户点击ABPersonViewController中的
本地址簿中有没有姓氏的联系人时,Swift中的这行代码会给我带来问题。我试过很多方法都无济于事。我可以使用某种trycatch语句或错误处理吗?或者检查AnyObject是否为null(的返回类型ABRecordCopyValue(person,kABPersonLastNameProperty).takeRetainedValue()).我试过使用可选类型,但它似乎不起作用,因为当您选择一个没有姓氏的联系人时应用程序停止运行-下面的代码行突出显示错误Thread1:EXC_BAD_ACCESSletlName=ABRecordCopyValue(person,kABPersonLas