【发布时间】:2015-08-11 05:13:16
【问题描述】:
我正在尝试为我的应用加载联系人。它在模拟器中运行良好。但在 iPhone 中崩溃。 我正在使用的代码:
func getContactNames()
{
let allContacts = ABAddressBookCopyArrayOfAllPeople(addressBookRef).takeRetainedValue() as Array
for record in allContacts {
let currentContact: ABRecordRef = record
let currentContactName = ABRecordCopyCompositeName(currentContact).takeRetainedValue() as String
if(currentContactName != "") {
println("found \(currentContactName).")
}
}
}
这个功能是正确的,在获得几个联系人后,应用程序崩溃并显示日志:
fatal error: unexpectedly found nil while unwrapping an Optional value
(lldb)
我认为这是由于联系人中的姓名,如果我尝试获取电话号码,它工作正常。我可以看到所有电话号码,但如果是姓名,我可以看到大约 350 个联系人,然后应用程序崩溃。
知道如何解决这个问题吗?
【问题讨论】:
标签: ios iphone swift contacts abaddressbook