@IBAction func callfriendbutton(sender: AnyObject) {
let phoneNumberstring = NSUserDefaults.standardUserDefaults().stringForKey("phoneNum");
var escapednum: String = phoneNumberstring!.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)!
let urlString = "telprompt://\(escapednum)";
let url = NSURL(string: urlString);
if UIApplication.sharedApplication().canOpenURL(url!) {
UIApplication.sharedApplication().openURL(url!);
}
}我尝试了所有的方法,但仍然无法工作,我还在我的info.plist中添加了使tel和tel都能工作的功能,但这是我得到的错误
2016-03-27 03:18:24.013 TACTAC64525:4775035 -canOpenURL: failed:"telprompt://1234567891“-错误:"(null)”
发布于 2016-03-27 07:41:50
为什么需要添加stringByAddingPercentEscapesUsingEncoding --这通常在Web中使用
如果下面的代码对您有效,您可以尝试它
let strCallNo: String = "1234567891"
let trimmedString = strCallNo.stringByTrimmingCharactersInSet(NSCharacterSet.whitespaceCharacterSet())
let telUrl:NSURL? = NSURL(string:trimmedString)
if ((telUrl) != nil){
if(UIApplication.sharedApplication().canOpenURL(telUrl!)){
UIApplication.sharedApplication().openURL(NSURL(string: "telprompt://"+strCallNo)!)
}else
{
print("Call not available")
}
}https://stackoverflow.com/questions/36244849
复制相似问题