“此视频不可用”- html 带有用于 WKWebView 嵌入的 iframe
“This video is unavailable” - html with iframe for WKWebView embedding
我需要使用 iframe 嵌入 Youtube 视频。根据一个测试项目,当我尝试将 youtube_ios_player_helper 与函数
一起使用时
-(BOOL)loadWithVideoId:(nonnull NSString *)videoId playerVars: (nullable NSDictionary *)playerVars
let vars = ["origin": "http://www.youtube.com"]
playerView.load(withVideoId: "gqbB8-sBuvg", playerVars: vars)
视频正常。如果我不使用其他参数,我会看到:"This video is unavailable"
。但是对于iframe,我只看到"This video is unavailable"
。我正在使用以下 html:
videoWebView.loadHTMLString("<iframe width=\"\(videoWebView.frame.width)\" height=\"\(videoWebView.frame.height)\" src=\"https://www.youtube.com/embed/gqbB8-sBuvg?enablejsapi=1&origin=\"http://www.youtube.com\"\" frameborder=\"0\" allow=\"autoplay; encrypted-media\" allowfullscreen> </iframe>", baseURL: nil)
如何修复 iframe 嵌入?
要解决 iframe 嵌入问题,您不需要使用 YouTube 帮助程序库。
问题出在 baseURL 上。需要 link 或资源路径而不是接收 nil。
例如,
videoWebView.loadHTMLString("<iframe>...</iframe>", baseURL: URL(string: "http://www.youtube.com")!)
我需要使用 iframe 嵌入 Youtube 视频。根据一个测试项目,当我尝试将 youtube_ios_player_helper 与函数
一起使用时-(BOOL)loadWithVideoId:(nonnull NSString *)videoId playerVars: (nullable NSDictionary *)playerVars
let vars = ["origin": "http://www.youtube.com"]
playerView.load(withVideoId: "gqbB8-sBuvg", playerVars: vars)
视频正常。如果我不使用其他参数,我会看到:"This video is unavailable"
。但是对于iframe,我只看到"This video is unavailable"
。我正在使用以下 html:
videoWebView.loadHTMLString("<iframe width=\"\(videoWebView.frame.width)\" height=\"\(videoWebView.frame.height)\" src=\"https://www.youtube.com/embed/gqbB8-sBuvg?enablejsapi=1&origin=\"http://www.youtube.com\"\" frameborder=\"0\" allow=\"autoplay; encrypted-media\" allowfullscreen> </iframe>", baseURL: nil)
如何修复 iframe 嵌入?
要解决 iframe 嵌入问题,您不需要使用 YouTube 帮助程序库。 问题出在 baseURL 上。需要 link 或资源路径而不是接收 nil。
例如,
videoWebView.loadHTMLString("<iframe>...</iframe>", baseURL: URL(string: "http://www.youtube.com")!)