Ios5 模拟器上的MFMessageComposeViewController-canSendText?

Ios5 模拟器上的MFMessageComposeViewController-canSendText?,ios5,ios-simulator,sendmessage,Ios5,Ios Simulator,Sendmessage,以下情况:我想发送应用程序内短信。这是我创建MFMessageComposeViewController的代码: -(void) showMessageComposerWithText:(NSString*)messageText telNumber:(NSString*)telNumber composeDelegate:(id)delegate { MFMessageComposeViewController *controller = [[MFMessageComposeViewC

以下情况:我想发送应用程序内短信。这是我创建MFMessageComposeViewController的代码:

-(void) showMessageComposerWithText:(NSString*)messageText telNumber:(NSString*)telNumber composeDelegate:(id)delegate
{
    MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init];
    if([MFMessageComposeViewController canSendText])
    {   
        controller.body = messageText;
        controller.recipients = [NSArray arrayWithObject:telNumber];
        controller.messageComposeDelegate = delegate;

        [delegate presentModalViewController:controller animated:YES];
    }
}
所以我认为这是直截了当的。在模拟器中进行测试时,我遇到以下异常:
应用程序试图将nil-view控制器推送到目标上
。我也在想,为什么在模拟器中运行应用程序时,
[MFMessageComposeViewController canSendText]
返回
YES

在设备上运行时,一切正常

我在文档/网站上找不到任何关于这种奇怪行为的信息

我在OS 10.7.3上运行Xcode 4.3,部署目标是iOS 5.0

提前感谢,,
我也看到了同样的事情。我认为这是使用Xcode 4.3的iOS 5模拟器中的一个bug<在iOS 4.3模拟器中,code>canSendText正确返回
NO
。同样的代码在设备上也可以正常工作。

模拟器应始终从canSendText返回NO,但iOS 5.0和5.1模拟器的情况并非如此。对于Xcode 4.2,它崩溃了,而在Xcode 4.3上,它只是推送一个nil视图控制器。

当您在OS X Lion上安装Messages beta时,就会出现此问题

编辑:当配置并启用了iMessage帐户时,Mountain Lion上也会出现这种情况。如果该帐户被禁用,它将正常工作(canSendText返回否)


提示:如果您使用controller.modaltransationstyle=uimodaltransationstylepartialcurl,您可以通过单击左上角卷曲的“页面”返回模拟器。

使用此配置,canSendText在模拟器中正确返回否(另外,UIAlertView显示文本消息不可用):

  • 山狮
  • Xcode 4.4
  • iOS 5.1

我也有同样的问题,一个nil视图被推送,但它甚至发生在我的测试设备上,运行iOS 5.1的iPhone 4如果安装了Messages beta,
canSendText
返回
YES
,但视图将变为黑色和空(无内容)。如果卸载了测试版邮件,
canSendText
返回
NO
。Lion上的Xcode4.4GM和iPhone5.1模拟器。对此有任何修复吗?这个错误在XCode为4.6.1的Mac OS 10.8.2上仍然存在。我猜您没有配置和启用iMessage帐户。