xcode – CKSMSComposeRemoteViewController超时等待来自com.app
发布时间:2020-12-14 19:01:39 所属栏目:百科 来源:网络整理
导读:好的,所以sendSMS在ios7及以下版本之前工作正常.但是,在ios8上,sendSMS函数失败,问题标题中出现错误.我在这里得到一个警告(尝试通过使用其他堆栈溢出问题将NSArray更改为NSString来解决):不兼容的指针类型从“NSString *”为controller.recipients = recipi
好的,所以sendSMS在ios7及以下版本之前工作正常.但是,在ios8上,sendSMS函数失败,问题标题中出现错误.我在这里得到一个警告(尝试通过使用其他堆栈溢出问题将NSArray更改为NSString来解决):不兼容的指针类型从“NSString *”为controller.recipients = recipients分配给’NSArray *’;它返回MessageComposeResultCancelled的结果.
if (ABMultiValueGetCount(phoneNumbers) > 0) { phone = (__bridge_transfer NSString*) ABMultiValueCopyValueAtIndex(phoneNumbers,0); [self sendSMS:@"Play me on PokerBuddies. Download the app at: https://itunes.apple.com/us/app /poker-buddies/id404168013?mt=8" recipientList:[NSString stringWithFormat:phone,nil]]; } else { phone = @"[None]"; } - (void)sendSMS:(NSString *)bodyOfMessage recipientList:(NSString *)recipients{ MFMessageComposeViewController *controller = [[MFMessageComposeViewController alloc] init]; if([MFMessageComposeViewController canSendText]){ controller.body = bodyOfMessage; controller.recipients = recipients; controller.messageComposeDelegate = self; [self presentViewController:controller animated:YES completion:nil]; NSLog(@"Send SMS"); } } 解决方法
我有类似MessageComposeController超时问题的问题.
我这样解决了它. 你必须创建MFMessageComposeViewController的实例变量,当你要呈现消息控制器时,你必须检查实例对象是否已经创建然后再做nil并再次初始化该对象.所以这个错误“CKSMSComposeRemoteViewController超时等待来自com的栅栏屏障.apple.mobilesms.compose“将不会来,控制器准确打开. if ([MFMessageComposeViewController canSendText]) { if (messageComposer) { messageComposer = nil; messageComposer = [[MFMessageComposeViewController alloc]init]; } messageComposer.recipients = arrPhoneNumber; messageComposer.messageComposeDelegate = self; messageComposer.body = @"Your text"; isMessageComposeAppear = 1; [self presentViewController:messageComposer animated:YES completion:nil]; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |