iOS 唤起拨打电话,打电话功能
方法一
1.这种方法,网上很多说法是,拨打完,电话。回不到原来的应用,会停留在通讯录里,而且是直接拨打,不弹出提示
但本人在iOS 10.3测试是,有 提示框的。也会回到原来的应用。其他版本系统没有测试过。
唤起提示框,很略慢。
NSString *telephoneNumber=@"拨打的号码";
NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"tel:%@",telephoneNumber];
UIApplication *application = [UIApplication sharedApplication];
NSURL *URL = [NSURL URLWithString:str];
[application openURL:URL];
方法二
这种方法,打完电话后还会回到原来的程序,也会弹出提示
但本人在iOS 10.3测试,唤起提示框,很略慢。
NSString *telephoneNumber=@"拨打的号码";
NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"tel:%@",telephoneNumber];
UIWebView * callWebview = [[UIWebView alloc] init];
[callWebview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:str]]];
[self.view addSubview:callWebview];
[callWebview release];
[str release];
方法三
这种方法也会回去到原来的程序里(注意这里的telprompt),也会弹出提示
但本人在iOS 10.3测试,唤起提示框,很略慢。
NSString *telephoneNumber=@"拨打的号码";
NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"telprompt://%@",telephoneNumber];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:str]]
方法四
打完电话后还会回到原来的程序,也会弹出提示
前面的三种方法都会有⚠️,提示ios10后不再推荐使用。
官方,iOS 10之后推荐使用下面的方法
但本人在iOS 10.3测试,唤起提示框,比前面三种方法快。
NSString *telephoneNumber=@"拨打的号码";
NSMutableString * str=[[NSMutableString alloc] initWithFormat:@"tel:%@",telephoneNumber];
UIApplication *application = [UIApplication sharedApplication];
NSURL *URL = [NSURL URLWithString:str];
[application openURL:URL options:@{} completionHandler:^(BOOL success) {
//OpenSuccess=选择 呼叫 为 1 选择 取消 为0
NSLog(@"OpenSuccess=%d",success);
}];