iOS 拨打电话功能的实现

时间:2022-11-10 13:57:09
// 定义点击拨号按钮时的操作 
- (void)callAction{ 
NSString *number = @"";// 此处读入电话号码
// NSString *num = [[NSString alloc]initWithFormat:@"tel://%@",number]; //number为号码字符串 如果使用这个方法结束电话之后会进入联系人列表

NSString *num = [[NSString alloc]initWithFormat:@"telprompt://%@",number]; //而这个方法则打电话前先弹框 是否打电话 然后打完电话之后回到程序中 网上说这个方法可能不合法 无法通过审核
[[UIApplication sharedApplication] openURL:[NSURLURLWithString:num]]; //拨号
}


  // 下面的代码能在应用中添加一个电话按钮,点击即可拨打电话号码。对于 iPhone 开发者还是很有用的。
// 添加电话图标按钮 
UIButton *btnPhone = [[UIButtonbuttonWithType:UIButtonTypeRoundedRect]retain]; 
btnPhone.frame =CGRectMake(280,10,30,30);
[btnPhone setBackgroundColor:[UIColor redColor]];
// 点击拨号按钮直接拨号
[btnPhone addTarget:self action:@selector(callAction)forControlEvents:UIControlEventTouchUpInside];
[self.window addSubview:btnPhone];



//  第三种方式打电话
-(void)CallPhone{
NSString *phoneNum = @"";// 电话号码
NSURL *phoneURL = [NSURL URLWithString:[NSStringstringWithFormat:@"tel:%@",phoneNum]];
if ( !phoneCallWebView ) {
phoneCallWebView = [[UIWebView alloc]initWithFrame:CGRectZero];// 这个webView只是一个后台的容易 不需要add到页面上来 效果跟方法二一样 但是这个方法是合法的
}
[phoneCallWebView loadRequest:[NSURLRequestrequestWithURL:phoneURL]];
}