我正在使用swift创建一个iOS联系人应用程序。我导入了 ContactsUI 。我正在尝试使用 CNContactFetchRequest 解析 CNContact 项目。当我尝试构建时,它显示主页的白屏实例(表视图中的联系人列表)。 将应用程序置于后台后,会显示导入联系人的警报。但是这个警报应该是第一次出现。 为什么呢?
我的代码:
if CNContactStore.authorizationStatusForEntityType(.Contacts) == .NotDetermined {
store.requestAccessForEntityType(.Contacts, completionHandler: { (authorized: Bool, error: NSError?) -> Void in if authorized { self.ContactArr = self.createContactArr(contactCN) } })
}
else if CNContactStore.authorizationStatusForEntityType(.Contacts) == .Authorized {
self.ContactArr = self.createContactArr(contactCN) }
let keysToFetch = [CNContactFormatter.descriptorForRequiredKeysForStyle(.FullName), CNContactImageDataKey,CNContactEmailAddressesKey,CNContactUrlAddressesKey,CNContactNoteKey, CNContactPhoneNumbersKey,CNContactPostalAddressesKey]
let fetchRequest = CNContactFetchRequest(keysToFetch: keysToFetch) var contacts = [CNContact]() do { try store.enumerateContactsWithFetchRequest(fetchRequest, usingBlock: { (let contact, let stop) -> Void in contacts.append(contact) }) }
我需要解决方案,这样我就不需要进入后台模式进入主页了。