我在iPhone上使用UIWebView播放YouTube视频。这在大多数时候都很好,但不是全部。
在某些情况下,显然与网络连接问题有关,错误“不支持此电影格式”。显示。在相同的情况下,Safari和YouTube播放器都可以看到同样的错误。
不幸的是Apple在AppStore测试期间已经看到它已经拒绝了该应用程序。
任何人都可以建议更合适地检测和处理错误的方法,或者任何其他视频托管系统,我们可以在没有播放器问题的情况下获得类似的体验吗?
感谢您的帮助,
拉里
答案 0 :(得分:0)
尝试使用此代码,看看它是否为您提供了有关该问题的其他提示:
// report the error inside the webview
NSString* errorString = [NSString stringWithFormat:
@"<html><center><font size=+5 color='white'>An error occurred:<br>%@</font></center></html>",
error.localizedDescription];
[self.webView loadHTMLString:errorString baseURL:nil];
答案 1 :(得分:0)
如果你使用YouTube数据api并检查联合密钥,如果它是真的那么视频应该播放。
当此值设置为FALSE时,表示视频在移动设备上受到限制。
假设youTubeResults是一个youtube jsonc编码的NSDictionary
if (![[[[[[youTubeResults objectForKey:@"data"]
objectForKey:@"items"]
objectAtIndex:index]
objectForKey:@"accessControl"]
valueForKey:@"syndicate"] isEqualToString:@"allowed"]){
NSLog(@"video won't play on mobile!");
}
另外,您可以尝试使用我开发的这个uiwebview类别,您可能会以不同的方式设置uiwebview。因为,我没有看到这个错误。
https://github.com/enigmaticflare/UIWebView-YouTube--iOS-Category--ARC-compliant-code