Я пытаюсь представить MFMessageComposeViewController
после того, как человек выберет свои контакты. Но я получаю сообщение об ошибке lldb
со следующим сообщением:
*** Завершение работы приложения из-за необработанного исключения «NSInvalidArgumentException», причина: «Приложение пыталось модально представить активный контроллер ‹Indexex.PortfolioSettingsViewController: 0x1452000000>».
Вот мой код:
func contactPicker(_ picker: CNContactPickerViewController, didSelect contacts: [CNContact]) {
var recipients = [String]()
//-- select contacts and present message compose view controller
contacts.forEach { (contact) in
for data in contact.phoneNumbers {
let phoneNo = data.value
recipients.append(phoneNo.stringValue)
}
//-- configure message view controller
messageViewController.recipients = recipients
messageViewController.body = "Testing Testing"
//-- reload the view controller
DispatchQueue.main.async {
self.present(self.messageViewController, animated: true, completion: nil)
}
}
}
Я действительно не так много понимаю в очереди отправки, поэтому я собираюсь провести больше исследований по этому вопросу и потокам, но если кто-нибудь захочет мне помочь, это будет очень признательно.
MFMessageComposeViewController
, если хотите один вызов вне цикла for - person Anbu.Karthik   schedule 11.07.2018