主要问题:
我创建了一个应用程序,其中包含三个选项卡中的人员目录(按位置,专业和名称)。此人可以在应用程序中选择联系人并进行呼叫;然而,接收呼叫的电话只显示一个号码而不是一个名字(因为联系人不在地址簿中,而是在我的应用程序中的sqlite数据库中)。
解决方法:
我不太确定是否还有其他方法可以解决这个问题,但由于呼叫和接收电话都安装了应用程序,我的工作是从我的sqlite3数据库(或数组)导入联系人将数据库拉入iPhone手机地址簿。一旦进入iPhone的地址簿,当有人打电话时,它会显示一个名字而不是一个数字。
问题:
我可以找到将单个联系人添加到地址簿的文档,但不能添加多个人(数据库目前拥有约150个联系人)。我想过尝试做一个循环,但我真的不知道从哪里开始..任何人都可以帮助我以正确的方式完成这项工作:)
在后台执行此操作的最佳方法是什么,这样才不会导致应用程序暂停\冻结。
提前致谢!
答案 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];
}