如何在Objective-C中拨打电话?
答案 0 :(得分:117)
您可以发起电话
所以这可能有用:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:12125551212"]];
答案 1 :(得分:23)
这是从我做过的项目中删除的:
NSString *phoneStr = [NSString stringWithFormat:@"tel:%@",phone_number];
NSURL *phoneURL = [NSURL URLWithString:phoneStr];
[[UIApplication sharedApplication] openURL:phoneURL];
答案 2 :(得分:19)
了解如何提示用户拨打号码也可能有所帮助:
NSURL *phoneNumber = [NSURL URLWithString:@"telprompt://13232222222"];
[[UIApplication sharedApplication] openURL:phoneNumber];
telprompt
允许用户选择在电话拨号前拨打电话或取消拨打电话。冒号后的两个正斜杠是可选的。
答案 3 :(得分:10)
如果您正在谈论使用objective-c在iphone上拨打电话,那么您可以这样做:
NSURL *phoneNumber = [[NSURL alloc] initWithString: @"tel:867-5309"];
[[UIApplication sharedApplication] openURL: phoneNumber];
如果您正在谈论在Mac上执行此操作,那么就像其他人提到的那样,根据事物的数量,如果您使用的是voip,调制解调器,通过Asterisks框等连接等等。
答案 4 :(得分:3)
删除电话号码中的空房间
NSString *phoneNumberString = @"123 456";
phoneNumberString = [phoneNumberString stringByReplacingOccurrencesOfString:@" " withString:@""];
phoneNumberString = [NSString stringWithFormat@"tel:%@", phoneNumberString];
NSURL *phoneNumberURL = [NSURL URLWithString:phoneNumberString]];
[[UIApplication sharedApplication] openURL:phoneNumberURL];
答案 5 :(得分:2)
不推荐使用openURL。
现在使用:
UIApplication *application = [UIApplication sharedApplication];
[application openURL:[NSURL URLWithString: @"tel:12125551212"] options:@{} completionHandler:nil];
答案 6 :(得分:-1)
NSString *phoneNumber = @"Phone number here";
UIWebView *webView = [[UIWebView alloc] init];
NSURL *url = [NSURL URLWithString:numberString];
NSURLRequest *requestURL = [NSURLRequest requestWithURL:url];
webView.dataDetectorTypes = UIDataDetectorTypeNone;
[webView loadRequest:requestURL];
答案 7 :(得分:-2)
这将是非常特定于平台的,或者您将不得不使用包装程序库来解释平台之间的差异,因此您最好说明这是什么平台。通常,大多数平台上都有各种电话API。
在Windows系统上,例如“TAPI”,如果您的目标是数字电话系统(如ISDN),也可能会有所不同,因为还有其他可用的API。