博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS开发之--调用打电话,发邮件,发短信的系统功能的代码
阅读量:6993 次
发布时间:2019-06-27

本文共 2983 字,大约阅读时间需要 9 分钟。

1、调用 自带mail

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://admin@hzlzh.com"]];

2、调用 电话phone

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://8008808888"]];
NSMutableString *str=[[NSMutableString alloc] initWithFormat:@"tel:%@",self.experienceDetailModel.phone];UIWebView *callWebview = [[UIWebView alloc] init];[callWebview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:str]]];[self.view addSubview:callWebview];

3、调用 SMS

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://800888"]];

4、调用自带 浏览器 safari

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.hzlzh.com"]];

 

 

发送短信

调用phone可以传递号码,调用SMS 只能设定号码,不能初始化SMS内容。

若需要传递内容可以做如下操作:

加入:MessageUI.framework

#import <MessageUI/MFMessageComposeViewController.h>

实现代理:MFMessageComposeViewControllerDelegate

调用sendSMS函数

//内容,收件人列表- (void)sendSMS:(NSString *)bodyOfMessage recipientList:(NSArray *)recipients{        MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];        if([MFMessageComposeViewController canSendText])            {                controller.body = bodyOfMessage;                controller.recipients = recipients;                controller.messageComposeDelegate = self;                [self presentModalViewController:controller animated:YES];            }    }// 处理发送完的响应结果- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result{    [self dismissModalViewControllerAnimated:YES];        if (result == MessageComposeResultCancelled)    {        NSLog(@"Message cancelled")    }    else if(result == MessageComposeResultSent)    {        NSLog(@"Message sent")    }    else    {        NSLog(@"Message failed")    }                }

 

发送邮件

导入#import <MessageUI/MFMailComposeViewController.h>

实现代理:MFMailComposeViewControllerDelegate

//发送邮件-(void)sendMail:(NSString *)subject content:(NSString *)content{        MFMailComposeViewController *controller = [[[MFMailComposeViewController alloc] init] autorelease];        if([MFMailComposeViewController canSendMail])            {                [controller setSubject:subject];                [controller setMessageBody:content isHTML:NO];                controller.mailComposeDelegate = self;                [self presentModalViewController:controller animated:YES];            }}//邮件完成处理-(void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error{        [self dismissModalViewControllerAnimated:YES];        if (result == MessageComposeResultCancelled)    {        NSLog(@"Message cancelled");    }    else if(result == MessageComposeResultSent)    {        NSLog(@"Message sent");    }    else    {        NSLog(@"Message failed");    }}

默认发送短信的界面为英文的,解决办法为:

在.xib 中的Localization添加一組chinese就ok了!

 

转载于:https://www.cnblogs.com/hero11223/p/6041666.html

你可能感兴趣的文章