iOS拨打电话
一、requestWithURL
拨打前弹出提示, 并且拨打完以后会回到原来的应用。
NSString *telStr = [NSString stringWithFormat:@"tel:%@",@"12306"];
UIWebView*callWebview = [[UIWebView alloc] init];
[callWebview loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:telStr]]];
[self.view addSubview:callWebview];
二、openURL(telprompt)
拨打前弹出提示, 并且拨打完以后会回到原来的应用。据说会导致App Store审核不通过。
NSString *telStr = [NSString stringWithFormat:@"telprompt:%@",@"12306"];
if(@available(iOS10.0, *)) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:telStr] options:@{} completionHandler:^(BOOL success) {
}];
}else{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:telStr]];
}
三、openURL(tel)
此方法在iOS 10.2之前不会弹出弹框,需要自己处理,手动添加alert即可,不会回到原来应用。10.2以后拨打前弹出提示, 并且拨打完以后会回到原来的应用。
NSString *telStr = [NSString stringWithFormat:@"tel:%@",@"12306"];
if(@available(iOS10.0, *)) {
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:telStr] options:@{} completionHandler:^(BOOL success) {
}];
}else{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:telStr]];
}