let x = dpadtxt.text! + "#"
let url = URL(string: ("tel://23456712561,2#,\(x)"))!
UIApplication.shared.openURL(url)
当我在字符串的末尾添加#
时,它会给我这个错误:
致命错误:在解包可选值时意外发现nil
答案 0 :(得分:2)
查看Apple URL Scheme参考documentation,您可以在其中阅读有关如何使用电话号码编码的信息。
在该文件中,您可以阅读......
防止用户恶意重定向电话或更改 手机或帐户的行为,手机应用程序支持最多,但 不是全部,电话方案中的特殊字符。具体来说,如果 URL包含*或#字符,Phone应用程序不会尝试 拨打相应的电话号码。如果您的应用收到了网址 来自用户或未知来源的字符串,您还应该确保 任何可能不适合在URL中的特殊字符 逃脱得当。对于原生应用,请使用 stringByAddingPercentEscapesUsingEncoding:NSString的方法 转义字符,返回正确转义的版本 原始字符串。
您必须使用类似
的编号对String
编号
let phone: NSString = "tel://23456712561,2#,#"
if let phone = phone.addingPercentEncoding(withAllowedCharacters: .urlHostAllowed)
{
print(phone)
}
请检查我的NSCharacterSet
是否正确,因为我现在无法在设备上测试它。