这是我拨打电话的代码
let phoneCall = phoneNumberTF.text
if let phoneCall = phoneCall {
let url = NSURL(string: "tel://\(phoneCall)")
UIApplication.sharedApplication().openURL(url!)
}else {
let alert = UIAlertController(title: "Error", message: "not correct phone", preferredStyle: .Alert)
let action = UIAlertAction(title: "Retry", style: .Default, handler: nil)
alert.addAction(action)
}
我在日志中收到此错误
ERROR: There is no registered handler for URL scheme tel
提示:我已经检查了这个问题,但解决方案并不适用于我 Calling a phone number in swift
答案 0 :(得分:2)
正确的网址方案是这样的
tel:PHONE_NUMBER
(没有包含的斜杠)。您还应该通过致电UIApplication.sharedApplication.canOpenURL()
...
let phoneNumber = "123-456-789"
let phoneURL = NSURL(string: "tel:\(phoneNumber)")!
if UIApplication.sharedApplication().canOpenURL(phoneURL) {
UIApplication.sharedApplication().openURL(phoneURL)
}
答案 1 :(得分:1)
正确的格式为tel:
。所以首先改变它,然后你应该在做UIApplication.sharedApplication.canOpenURL()
之前检查它。如果您在模拟器上运行它将无法正常工作。