我已经在Info.plist文件的LSApplicationQueriesSchemes中添加了“ instagram”,但是在调用以下函数时,它仍然无法打开Safari和instagram:
func openinstagram () {
let instaurl = URL(fileURLWithPath: "https://www.instagram.com/(myusername)/?hl=de")
if UIApplication.shared.canOpenURL(instaurl) {
UIApplication.shared.open(instaurl, options: [:] ) { (sucess) in
print("url opened")
}
}
}
除了日志中的“网址已打开”外,它什么也没告诉我
对此有什么解决方案? 预先谢谢你
答案 0 :(得分:0)
您使用了错误的API
URL(fileURLWithPath
用于以/
开头的文件系统URL。URL(string
用于以方案(https://
,file://
)开头的URL myusername
的字符串插值看起来是错误的(在查询问号前缺少反斜杠和多余的斜杠)。
if let instaurl = URL(string: "https://www.instagram.com/\(myusername)?hl=de"),
UIApplication.shared.canOpenURL(instaurl) { ...
答案 1 :(得分:0)
您可以尝试一下。
URL(fileURLWithPath:)
用于获取以/
URL(string:)
是创建Web网址
func openinstagram () {
if let instaurl = URL(string: "https://www.instagram.com/(myusername)/?hl=de"),
UIApplication.shared.canOpenURL(instaurl) {
if #available(iOS 10.0, *) {
UIApplication.shared.open(instaurl)
} else {
UIApplication.shared.openURL(instaurl)
}
}
}