将多个联系人导入地址簿iOS6 \ Xcode

时间:2012-11-18 13:52:25

标签: ios cocoa-touch ios6

主要问题:

我创建了一个应用程序,其中包含三个选项卡中的人员目录(按位置,专业和名称)。此人可以在应用程序中选择联系人并进行呼叫;然而,接收呼叫的电话只显示一个号码而不是一个名字(因为联系人不在地址簿中,而是在我的应用程序中的sqlite数据库中)。

解决方法:

我不太确定是否还有其他方法可以解决这个问题,但由于呼叫和接收电话都安装了应用程序,我的工作是从我的sqlite3数据库(或数组)导入联系人将数据库拉入iPhone手机地址簿。一旦进入iPhone的地址簿,当有人打电话时,它会显示一个名字而不是一个数字。

问题:

我可以找到将单个联系人添加到地址簿的文档,但不能添加多个人(数据库目前拥有约150个联系人)。我想过尝试做一个循环,但我真的不知道从哪里开始..任何人都可以帮助我以正确的方式完成这项工作:)

在后台执行此操作的最佳方法是什么,这样才不会导致应用程序暂停\冻结。

提前致谢!

1 个答案:

答案 0 :(得分:0)

试试这个......

nameArray = [[NSMutableArray alloc]init];

for (int index = 0 ; index< ABAddressBookGetPersonCount(addressBookObj); index++)
{
    recordRefObj = CFArrayGetValueAtIndex(arrayRefObj, index);
    NSString *nameStr = (__bridge NSString*) ABRecordCopyValue(recordRefObj, kABPersonFirstNameProperty);
    [nameArray addObject:nameStr];
}