我尝试了以下代码,但它无效
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel://%@",@"55698"]]];
请提供支持iOS7 SDK的帮助。
答案 0 :(得分:7)
删除//在您的代码中的tel:之后
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel:55698"]];
OR
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel:%@",@"55698"]]];
答案 1 :(得分:4)
以上答案很好。请记录,您在电话号码字符串的前面或后面留下了一些Blank space
(@" "
)。我遇到了同样的问题并得到了这样的错误:
LaunchServices:错误:URL方案没有注册处理程序 (空)
然后我添加了该代码并打开提示拨号器,如下面的代码
NSString *strPhone=[[[dictEvent valueForKey:@"app_contact_value"] stringByReplacingOccurrencesOfString:@"+" withString:@""] stringByReplacingOccurrencesOfString:@" " withString:@""];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"telprompt://%@",strPhone]]];
现在运行正常。
您也可以像其他答案一样直接拨打电话号码:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"telprompt://%@",strPhone]]];
答案 2 :(得分:3)
试试这个简单的代码:
NSURL *URL = [NSURL URLWithString:@"tel://55698"];
[[UIApplication sharedApplication] openURL:URL];
在不在模拟器中的设备中尝试...
答案 3 :(得分:3)
在Swift 2.0 - > = iOS 7.0中,您可以使用以下内容:
let url:NSURL = NSURL(string: "tel://9809088798")!
if (UIApplication.sharedApplication().canOpenURL(url))
{
UIApplication.sharedApplication().openURL(url)
}
答案 4 :(得分:2)
您可以使用
通过手机应用程序拨打电话NSString *phoneNumber = @"tel://472490168092";
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:phoneNumber]];
您无法在iOS中的手机应用程序中打开键盘。您可以在视图控制器中设计自己的手机垫,为按键添加音调。这是实现这种AFAIK的唯一方法。
答案 5 :(得分:1)
请勿使用tel://
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"tel:55698"]]];
答案 6 :(得分:1)
针对 Swift 和 iOS 10 及更高版本进行了更新,其中电话号码是一个字符串
//call Phone dialer
if let url = URL(string: "tel://\(phoneNumber)"), UIApplication.shared.canOpenURL(url) {
UIApplication.shared.open(url, options: [:], completionHandler: nil)
}