我正在使用此代码在 youtube 应用程序中打开 youtube url,如果它在 safari 浏览器中存在,但没有任何效果
代码如下:
func openVideo(videoLink: String){
print(videoLink)// https://www.youtube.com/watch?v=66q2fmLWMCI
print(videoLink.replacingOccurrences(of: "https", with: "youtube")) // youtube://www.youtube.com/watch?v=66q2fmLWMCI
let url = URL(string: videoLink.replacingOccurrences(of: "https", with: "youtube"))
if !UIApplication.shared.canOpenURL(url!) {
UIApplication.shared.open(url!)
}else{
UIApplication.shared.open(URL(string: videoLink)!, options: [:], completionHandler: nil)
// I have also used
// UIApplication.shared.open(URL(string: videoLink)!)
// UIApplication.shared.openURL(URL(string: videoLink)!)
}
}
它给我这个错误 URL 失败:“youtube://www.youtube.com/watch?v=66q2fmLWMCI”- 错误:“操作无法完成。(OSStatus 错误 -10814。)”
最佳答案
在youtube中无法打开url,这不是错误只是日志,可能是因为设备上没有安装youtube。 另外,如果 else 阻止,你打开 youtube 是错误的。 Youtube 应该在你有 youtube 应用程序时打开,而不是在你没有时打开,这就是你在代码中所做的。 只需修改这一行
if !UIApplication.shared.canOpenURL(url!) {
UIApplication.shared.openURL(URL(string: videoLink)!)
}else{
UIApplication.shared.open(url!)
}
关于ios - youtube 网址打不开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51831481/