我尝试使用 UIApplication.shared.open 函数打开 url,但我有点困惑,因为它不适用于 www.google.com 而它适用于 https://www.google.com。
struct GetIsoCode: View {
@State var titile = "www.google.com"
var body: some View {
Text(titile)
.onTapGesture {
let urlS = URL(string:titile)
if let url = urlS {
UIApplication.shared.open(url) { (response) in
print(response)
}
}
}
}
}
第一个用例:
输入网址:
<块引用>www.google.com
输出:
<块引用>无法打开 URL www.google.com: Error Domain=NSOSStatusErrorDomain Code=-50 "invalid input parameters" UserInfo={NSDebugDescription=invalid input parameters, _LSLine=234, _LSFunction=-[_LSDOpenClient openURL:options:completionHandler: ]}
第二个用例:
输入:
<块引用>https://www.google.com
结果:一切正常。
有人可以向我解释如何从两个链接中显示 google,我已经尝试通过上述方法实现,但还没有结果。
答案 0 :(得分:2)
文档说:
<块引用>UIKit 支持许多常见的方案,包括 http、https、tel、 facetime 和 mailto 方案。
使用此方法打开指定的资源。如果指定的网址 方案由另一个应用程序处理,iOS 启动该应用程序并通过 它的网址。 (启动应用程序会将另一个应用程序带到前台。) 如果没有应用程序能够处理指定的方案,则完成 在成功参数设置为 NO 的情况下调用处理程序。
确定是否安装了能够处理 URL,在调用这个之前先调用 canOpenURL: 方法