Ошибка приложения при получении контактов с iPhone в SWIFT

Я пытаюсь получить контакты, используя следующий код:

var addressBook: ABAddressBook! let addressBookRef: ABAddressBook = ABAddressBookCreateWithOptions(nil, nil).takeRetainedValue() var arrContacts = [""] var personNameContactNo:[String: String] = ["":""] var arrOfDictContacts = NSMutableArray() var Name: String! if let people = ABAddressBookCopyArrayOfAllPeople(addressBook)?.takeRetainedValue() as? NSArray { for person in people{ if let name = ABRecordCopyValue(person, kABPersonFirstNameProperty).takeRetainedValue() as? String { Name = name } let numbers:ABMultiValue = ABRecordCopyValue( person, kABPersonPhoneProperty).takeRetainedValue() var number = ABMultiValueCopyValueAtIndex(numbers,0).takeRetainedValue() as! String println("number = \(number)") if(number.isEmpty) { println("empty") } else { personNameContactNo.removeAll(keepCapacity: true) personNameContactNo.updateValue(number, forKey:Name) arrOfDictContacts.addObject(personNameContactNo) } println(personNameContactNo) } println(arrOfDictContacts) } what am expecting is: ["Arun":"123455"], ["John":"23456122"], etc... 

Он хорошо работает в симуляторе, но не на устройстве. возможно, это связано с некоторым значением nil. Приложение вылетает со следующим сообщением msg: fatal error: unexpectedly found nil while unwrapping an Optional value (lldb)

Сбой изображения

One Solution collect form web for “Ошибка приложения при получении контактов с iPhone в SWIFT”

Пытаться; это должно решить вашу проблему.

 var addressBookRef: ABAddressBookRef = ABAddressBookCreateWithOptions(nil, nil).takeRetainedValue() var arrOfDictContacts:NSMutableArray = NSMutableArray() let people:NSArray = ABAddressBookCopyArrayOfAllPeople(addressBookRef).takeRetainedValue(); for person in people{ if let name:String = ABRecordCopyValue(person, kABPersonFirstNameProperty)?.takeRetainedValue() as? String { let numbers:ABMultiValue = ABRecordCopyValue(person, kABPersonPhoneProperty).takeRetainedValue() // if (ABMultiValueGetCount(numbers) > 0) { //This condition is optional because using '?' before calling takeRetainedValue if let number:String = ABMultiValueCopyValueAtIndex(numbers,0)?.takeRetainedValue() as? String { println("number = \(number)"); arrOfDictContacts.addObject(["\(name)":"\(number)"]); } // } } } //-- println(arrOfDictContacts); 
  • Набор Sprite, удалите анимированные текстуры из памяти
  • Отправка и задержка между вызовами
  • HealthKit - requestAuthorization (toShare: read: завершение :) всегда удается
  • Как использовать SwiftyJSON в моем приложении для iOS?
  • Показать / скрыть barButtonItem
  • NSFastEnumeration в Swift
  • Связывание с UIRefreshControl после обновления с помощью RxSwift
  • Черный экран с UIViewControllerAnimatedTransitioning
  • Как настроить пользовательскую ячейку как верхний или нижний колонтитул UITableView
  • Статический UITableView, создайте отдельную ячейку с динамической высотой в Swift
  • Как переключить защищенную текстовую запись UITextField (скрыть пароль) в Swift?
  • Interesting Posts

    UIDocumentInteractionController показывает только имя и размер файла при предварительном просмотре

    AVAssetReaderTrackOutput зависает на copyNextSampleBuffer

    iPad 1 показывает портретный режим вместо пейзажа

    Клавиатура iOS 8 сбрасывает контроллер просмотра на позиции раскадровки

    Обновление каждого дня в быстром синтаксисе

    Событие кликов на экране PageViewController

    какая разница между объявлением переменной в .m vs в .m, но с категорией в объекте c

    Измените цвет UIButton BG на выделенном, но сохраните радиус угла слоя?

    ошибка дубликата символьного линкера из-за libWeANDSFLibrary.a (ASIReachability.o)

    ios: как загружать изображения из URL-адреса в элемент управления страницы с помощью прокрутки

    UISeachBar и методы делегирования

    Двоичный оператор '==' не может применяться к двум структурным операндам

    Увеличение масштаба карты до местоположения пользователя и аннотации (скорость 2)

    Как отключить анимацию в выборе TableView в Popover?

    отключить запуск образа из приложения

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.