Вы можете использовать параметр result
messageComposeViewController:didFinishWithResult:
для проверки состояния сообщения. Его тип MessageComposeResult :
enum MessageComposeResult {
MessageComposeResultCancelled,
MessageComposeResultSent,
MessageComposeResultFailed
};
Имейте в виду, что MessageComposeResultSent
может интерпретироваться только как успешная постановка в очередь сообщения для последующей отправки. Фактическая отправка произойдет, когда устройство сможет отправить.
Как проверить, может ли устройство отправлять сообщения?
Чтобы проверить, может ли устройство отправлять текстовые сообщения, используйте MFMessageComposeViewController
canSendText метод класса. Согласно документации, вы должны всегда вызывать этот метод, прежде чем пытаться представить сообщение compose view controller.
Однако, это не скажет вам, если устройство может отправить сообщение сейчас (в случае, если вы спросили с этим утверждением: Фактическая отправка произойдет, когда устройство сможет отправить ).