2017-02-02 4 views
0

내 앱에서 SMS를 보내려 할 때 MFMessageComposeViewController을 사용하고 있습니다.Swift에서 SMS를 보내지 못했지만 MFMessageComposeViewController 대리인에게 보내기 Show

didFinishWithResult 대리자 메서드 MFMessageComposeViewController은 메시지가 성공적으로 전송되었음을 나타내지 만 실제로이 SMS는 불충분 한 균형으로 인해 보내지 못했습니다. 그래서 MFMessageComposeViewController은 정확한 결과를 보여주지 못합니다.

메시지 앱이 SMS를 보내지 못했다는 것을 어떻게 알 수 있습니까? 실패한 상태를 얻을 수있는 방법이 있습니까?

+0

메시징 가용성에 대한 변경 사항 감지 현재 장치의 메시징 기능에 대한 변경 사항을 알리려면 관찰자를 MFMessageComposeViewControllerTextMessageAvailabilityDidChange 알림에 추가하십시오. 시스템은 메시징 상태가 변경되면 해당 통지를 관찰자에게 전달합니다. 자세한 내용은 다음을 참조하십시오. https://developer.apple.com/reference/messageui/mfmessagecomposeviewcontroller#//apple_ref/occ/instm/MFMessageComposeViewController/addAttachmentURL:withAlternateFilename : – Mannopson

+0

감사합니다. 실제로이 알림은 canSendText() 클래스 메서드에서 반환 된 값이 변경되고 canSendText()가 SMS를 보낼 수있는 장치에서만 검사 할 때 게시됩니다. 따라서 메시지 앱이 SMS를 보내지 못하면 실패 상태가되지 않습니다. 정확하게, 메시지 앱이 MFMessageComposeViewController를 통해 보내는 SMS를 보내지 못했을 때 상태가 필요합니다. –

+0

왜? 모든 상태 물건이 거기에있다, 나는 애플의 문서를 의미한다. MessageComposeResult는 이러한 상태를 제공해야합니다. 그들은 .sent, .cancelled, .failed! 시스템은 자신의 상태를 알고 즉시 알려줍니다. 희망이 당신을 돕는다 – Mannopson

답변

1

메시지가 메시지 앱에서 전송되었거나 실패했는지 여부를 알 수 없습니다.

메시지를 성공적으로 전송 대기열에 넣으면 결과는 messageComposeViewController:didFinishWithResult:입니다.

+0

메시지 앱에서 알 수없는 경우 내 앱에서 무엇을 할 수 있습니까? SMS를 보내는 정확한 상태가 필요합니다. –