MFMailComposeViewController исчезает сразу под iOS9
Однажды я представляю MFMailComposeViewController
уволен с ошибкой:
viewServiceDidTerminateWithError: Ошибка Domain=_UIViewServiceInterfaceErrorDomain Code=3 "(null)" UserInfo={Сообщение = Соединение со службой прервано}
Что здесь происходит?
ОЧЕНЬ ВАЖНОЕ ПРИМЕЧАНИЕ
Это работает очень хорошо под iOS8
,
1 ответ
Я не могу помочь вам, так как вы не опубликовали никакого кода, но вот рабочая копия MailComposeController на iOS9, использующая его в моем приложении без каких-либо проблем. Важно, чтобы ваш класс соответствовал MFMailComposeViewControllerDelegate. Обратите внимание, что метод sendMail связан с кнопкой в моем проекте
@IBAction func sendMail(sender: AnyObject) {
let mailComposeViewController = configuredMailComposeViewController()
if MFMailComposeViewController.canSendMail() {
self.presentViewController(mailComposeViewController, animated: true, completion: nil)
} else {
self.showSendMailErrorAlert()
}
}
func configuredMailComposeViewController() -> MFMailComposeViewController {
let mailComposerVC = MFMailComposeViewController()
mailComposerVC.mailComposeDelegate = self
mailComposerVC.setToRecipients(["yourMail@goesHere"])
return mailComposerVC
}
func showSendMailErrorAlert() {
print("There was an error.")
//In case of error with email account on device, you should implement an alert here
}
func mailComposeController(controller: MFMailComposeViewController, didFinishWithResult result: MFMailComposeResult, error: NSError?) {
controller.dismissViewControllerAnimated(true, completion: nil)
}