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]];

}

你可能感兴趣的:(iOS拨打电话)