
1、可能是由于手机缓存过多而出现死机,从而导致短信无法打开。
解决方法:可以尝试按住手机的Home键和电源键不放,直到屏幕出现苹果图标后松手,手机会重新启动,通过手机重启来恢复短信应用。
2、可能是由于手机系统版本不符,导致短信应用与系统版本发生冲突。
解决方法:升级手机系统到最新版本,升级到最新手机系统版本后短信应用将恢复。
3、可能由于手机出现屏幕故障,不能通过点击短信图标来打开短信应用。
解决方法:前往手机售后点进行检测维修。
<pre>[[UIApplication sharedApplication]openURL:[NSURL URLWithString:
@sms://13888888888]]
-(void)messageComposeViewController(MFMessageComposeViewController*)controller didFinishWithResult:(MessageComposeResult)result
{
[self dismissViewControllerAnimated:YES completion:nil]
switch
(result) {
case
MessageComposeResultSent:
信息传送成功
break
case
MessageComposeResultFailed:
信息传送失败
break
case
MessageComposeResultCancelled:
信息被用户取消传送
break
default:
break
}
}</pre>
程序内调用系统发短信
<pre>
实现代理方法MFMessageComposeViewControllerDelegate
-(void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
[self dismissViewControllerAnimated:YES completion:nil]
switch (result) {
case MessageComposeResultSent:
//信息传送成功
}
</pre>
发送短信
<pre>
-(void)showMessageView:(NSArray *)phones title:(NSString *)title body:(NSString *)body
{
if( [MFMessageComposeViewController canSendText] )
{
MFMessageComposeViewController * controller = [[MFMessageComposeViewController alloc] init]
controller.recipients = phones
controller.navigationBar.tintColor = [UIColor redColor]
controller.body = body
controller.messageComposeDelegate = self
[self presentViewController:controller animated:YES completion:nil]
[[[[controller viewControllers] lastObject] navigationItem] setTitle:title]//修改短信界面标题
}
else
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@提示信息
message:@该设备不支持短信功能
delegate:nil
cancelButtonTitle:@确定
otherButtonTitles:nil, nil]
[alert show]
}
}
参数phones:发短信的手机号码的数组,数组中是一个即单发,多个即群发。
</pre>
调用发短信的方法
<pre>
[self showMessageView:[NSArray arrayWithObjects:@13888888888,@13999999999, nil] title:@test body:@你是土豪么,么么哒]
</pre>
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)