iOS 调用系统发短信以及打电话功能

ios电话smsinterface互联网class
先介绍一种最简单的方法:

调用打电话功能

[[UIApplicationsharedApplication] openURL:[NSURL URLWithString:@“tel://10086”]];

调用发短信功能

[[UIApplication sharedApplication]openURL:[NSURL URLWithString:@“sms://10000”]];

上面的发短信的功能是调用系统的界面,下面是实现一种点击按键就直接发送短信,相当于后台发送,能不能上软件商店,还不能确定。相对建议来说,尽量使用第一种。

首先导入MFMessageComposeViewControllerDelegate这个代理,实现里面的方法

-(void)messageComposeViewController:(MFMessageComposeViewController *)controllerdidFinishWithResult:(MessageComposeResult)result {

  //Notifies users about errors associated with the interface

  switch (result) {

     case MessageComposeResultCancelled:

        if (DEBUG) NSLog(@"Result: canceled");

        break;

     case MessageComposeResultSent:

        if (DEBUG) NSLog(@"Result: Sent");

        break;

     case MessageComposeResultFailed:

        if (DEBUG) NSLog(@"Result: Failed");

        break;

     default:

        break;

  }

  [self dismissModalViewControllerAnimated:YES]; 

}

群发短信:

-(IBAction)sendSMS {

BOOL canSendSMS = [MFMessageComposeViewController canSendText];

NSLog(@“can send SMS [%d]”,canSendSMS);

if (canSendSMS) {

 MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];

 picker.messageComposeDelegate = self;

 picker.navigationBar.tintColor = [UIColor blackColor];

 picker.body = @"test";

 picker.recipients = [NSArray arrayWithObject:@"10086"];

 [self presentModalViewController:picker animated:YES];

 [picker release];   

}

}

给一个人发短信:
从网页上获得内容

-(void)displaySMSComposerSheet

{

MFMessageComposeViewController *picker = [[MFMessageComposeViewController alloc] init];

picker.messageComposeDelegate = self;

UIWebView *web = nil;

NSMutableString* absUrl = [[NSMutableString alloc] initWithString:web.request.URL.absoluteString];

[absUrl replaceOccurrencesOfString:@"http://i.aizheke.com" withString:@"http://m.aizheke.com" options:NSCaseInsensitiveSearch range:NSMakeRange(0, [absUrl length])];

picker.body=[NSString stringWithFormat:@"我在爱折客上看到:%@ 可能对你有用,推荐给你!link:%@",[webstringByEvaluatingJavaScriptFromString:@"document.title"],absUrl];

[absUrl release];

[self presentModalViewController:picker animated:YES];

[picker release];

}

事件绑定发送短信

-(IBAction)showSMSPicker:(id)sender {

Class messageClass = (NSClassFromString(@"MFMessageComposeViewController"));

if (messageClass != nil) {

    if ([messageClass canSendText]) {

        [self displaySMSComposerSheet];

    }

    else {

//设备没有短信功能

   }

}

else {

// iOS版本过低,iOS4.0以上才支持程序内发送短信

}

}

posted on 2015-04-15 09:32  韩江河  阅读(212)  评论(0编辑  收藏  举报