MFMessageComposeViewController在iPad iOS7黑屏上添加附件数据
我有一个MFMessageComposecController,我想通过iPad上没有的iMessage SMS发送图像 这是我的代码:MFMessageComposeViewController在iPad iOS7黑屏上添加附件数据,ios,iphone,ipad,ios7,imessage,Ios,Iphone,Ipad,Ios7,Imessage,我有一个MFMessageComposecController,我想通过iPad上没有的iMessage SMS发送图像 这是我的代码: - (void)presentMessageController { if(![MFMessageComposeViewController canSendAttachments]) { UIAlertView *warningAlert = [[UIAlertView alloc] initWithTitle:@"Error"
- (void)presentMessageController {
if(![MFMessageComposeViewController canSendAttachments])
{
UIAlertView *warningAlert = [[UIAlertView alloc] initWithTitle:@"Error"
message:@"Your device doesn't support sharing photos via SMS!"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[warningAlert show];
return;
}
MFMessageComposeViewController *messageController = [[MFMessageComposeViewController alloc] init];
messageController.messageComposeDelegate = self;
[messageController addAttachmentData:imgData typeIdentifier:(NSString *)kUTTypePNG filename:@"image.png"];
// Present message view controller on screen
[self presentViewController:messageController animated:YES completion:nil];
}
问题似乎出现在[messageController addAttachmentData…]中。messageController不显示,而是出现一个空白屏幕,应用程序挂起,1-2秒后,代理用MessageComposeSultCancelled响应,我在控制台中看到:
等待来自com.apple.mobilesms.compose的围栏屏障超时
警告:当演示或取消正在进行时,尝试从视图控制器取消
如果我对该行进行注释,则会显示messageController,并且会打开Message
重要:
当我只在iPad2上测试,并且安装了iOS 7.0.3时,就会发生这种情况。同样的代码在iPhone5、4、4S和iOS 7.0.3中也能完美运行
当出现黑屏时,无法返回应用程序。你必须终止应用程序,然后重新启动
有人遇到过同样的问题吗?请帮忙。谢谢。尝试更改:
[messageController addAttachmentData:imgData typeIdentifier:(NSString *)kUTTypePNG filename:@"image.png"];
致:
延迟一段时间后调用presentMessageController方法
[self-performSelector:@selectorpresentMessageController with object:nil afterDelay:0.5] 代码似乎是正确的,请检查imgData是否为nilimgData是否为nil。[messageController addAttachmentData..]返回YES。所以附上了图片。我刚刚测试过,结果完全一样。黑屏和挂断。
[messageController addAttachmentData:imgData typeIdentifier:@"public.data" fileName:@"image.png"];