现在的位置: 首页 > 综合 > 正文

iOS开发-发送短信2种方式比较

2018年04月08日 ⁄ 综合 ⁄ 共 1541字 ⁄ 字号 评论关闭

IOS发送短信有两种方式:

1.使用appdelegate切换到短信应用,此时你的应用被放置在后台(不推荐)


2.使用系统的短信界面,发送成功或者失败以后会有一个回调,然后系统会关闭短信界面,回到你的应用(推荐)

可用代码:

#pragma mark -发送短信
@interface ViewController ()
{
    UIAlertView *mfAlertview;//定义一个弹出框
}


-(void)showMessageViewController
{
    if( [MFMessageComposeViewController canSendText] )//判断是否能发短息
{
        
        MFMessageComposeViewController * controller = [[MFMessageComposeViewController alloc]init];
        controller.recipients = [NSArray arrayWithObject:@"10010"];//接收人,可以有很多,放入数组
        controller.body = self.txYaoqingma.text;//短信内容,自定义即可
        controller.messageComposeDelegate = self;//注意不是delegate
        
        [self presentViewController:controller animated:YES completion:nil];
        
        [[[[controller viewControllers] lastObject] navigationItem] setTitle:@"发送短信"];//修改短信界面标题
    }
    else
    {
        
        UIAlertView *alert=[[UIAlertView alloc]initWithTitle:@"抱歉" message:@"短信功能不可用!" delegate:self cancelButtonTitle:@"好" otherButtonTitles:nil, nil];
        [alert show];
    }
}

//短信发送成功后的回调
-(void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
    [controller dismissViewControllerAnimated:YES completion:nil];
    
    switch (result)
    {
        case MessageComposeResultCancelled:
        {
            //用户取消发送
        }
            break;
            case MessageComposeResultFailed://发送短信失败
        {
            mfAlertview=[[UIAlertView alloc]initWithTitle:@"抱歉" message:@"短信发送失败" delegate:nil cancelButtonTitle:@"好" otherButtonTitles:nil, nil];
            
            [mfAlertview show];
           
        }
            break;
        case MessageComposeResultSent:
        {
            mfAlertview=[[UIAlertView alloc]initWithTitle:@"恭喜" message:@"短信发送成功!" delegate:nil cancelButtonTitle:@"好" otherButtonTitles:nil, nil];
            
            [mfAlertview show];
            
        }
            break;
        default:
            break;
    }
}

原文地址:http://blog.csdn.net/yangbingbinga

抱歉!评论已关闭.