2013-08-30 4 views
4

Я использую MFMessageComposeViewController в своем приложении iOS.MFMessageComposeViewController останавливает обмен сообщениями sms

MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init]; 
if([MFMessageComposeViewController canSendText]){ 
    controller.body = text; 
    controller.recipients = [NSArray arrayWithObjects:recipient,nil]; 
    controller.messageComposeDelegate = self.navigationController; 
    [self.navigationController presentViewController:controller animated:YES]; 
} 

-(void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result { 
[self dismissModalViewControllerAnimated:YES]; 
} 

Button "send message" is blue. Если вы отправляете сообщение не пользователю iMessage, iPhone отправляет sms, а не iMessage, но на некоторых устройствах (iPhone 4, 5) операция завершается с ошибкой. После этой ошибки вы вообще не можете отправлять сообщения пользователю! используя стандартное приложение sms в iPhone.

Удаление контакта, перезагрузка, выключение iMessage не решает эту проблему. MFMessageComposeViewController убивает отправку sms, и мы не можем решить эту проблему. У нас есть версия iOS 6.1.3 на тестовых устройствах.

+0

Вы уверены, что вы имеете в виду, чтобы установить messageComposeDelegate к навигации контроллера? Это будет делать только что-то разумное, если вы подклассифицировали навигационный контроллер. Вероятно, это не решит проблему, поскольку это похоже на ошибку Apple. –

ответ

0

попробовать

controller.messageComposeDelegate = self; 
+0

Было бы полезно использовать еще несколько контекстов/объяснений. – Thomas