iOS 中获得本机号,拨打电话,发送短信

1. 获得本机号码:
	首先引入“CoreTelephony.framework”框架;
	然后,一行代码获得本机手机号:
	NSString *telphoneStr =  CTSettingCopyMyPhoneNumber();

	拨打电话:

NSString *phoneNum = @“150011xxxx”;// 电话号码

        NSURL *phoneURL = [NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",phoneNum]];

        // 这个webView只是一个后台的,不需要add到页面上来,合法;

        UIWebView *phoneCallWebView = [[UIWebView alloc] initWithFrame:CGRectZero];

        [phoneCallWebView loadRequest:[NSURLRequest requestWithURL:phoneURL]];

       拨打电话参考:http://blog.sina.com.cn/s/blog_65a8ab5d01017nlg.html
2. 发送短信:
	1)[[UIApplication sharedApplication] openURL:@"sms:12345678"]; 

这样的方式无法指定短信内容。

2)可以使用MessageUI框架。

首先在程序中导入MessageUI.framework。import头文件:#import "DeviceDetection.h"

然后在代码中使用下面的语句来调用短信发送窗口,并指定号码和短信内容:

		MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];
		controller.body = @"zc";
		controller.recipients = [NSArray arrayWithObjects:@"106295598", nil];
		controller.messageComposeDelegate = self;
		[self presentModalViewController:controller animated:YES];

同时实现协议MFMessageComposeViewControllerDelegate, 在协议方法messageComposeViewController:didFinishWithResult:

		switch (result) {
   			 case MessageComposeResultCancelled:
   				     NSLog(@"Cancelled");
   				     break;
 			   case MessageComposeResultFailed:
			        [self alert:@"发送短信错误!"];
 			       break;
 			   case MessageComposeResultSent:
			        break;
  			  default:
      				  break;
		}
		[self dismissModalViewControllerAnimated:YES];

你可能感兴趣的:(iOS基础)