这是我第一次在这里发帖。所以请耐心等待。我正在使用Webkit在网络视图中显示YouTube上的一些内容。
背景
- 操作系统:操作系统X 10.10.2
- SDK:OS X 10.10
问题
正如我之前所说的,我正在使用WebView来显示YouTube上的内容。但是,我遇到了一些问题,我在下面概述了这些问题
当尝试使用YouTube的全屏操作时,会发生以下情况:
测试一(使用Flash):
观察:
-
我做错了什么:当我在YouTube网站上使用Flash播放器时,当我试图播放视频时,一切都很好。此外,当我点击YouTube视频的全屏按钮时,窗口确实出现在全屏中。然而,它并不是完全全屏的(菜单栏仍然可见)
-
我所期望的:我期望视频会完全进入全屏。在Safari中,一切都很正常。
测试二(使用HTML5):
观察:
-
我所做的:当我在YouTube网站上使用HTML5播放器时,当我试图播放视频时,一切都很好。然而,当我点击YouTube视频的全屏按钮时,什么也没发生。
-
我所期望的:我期望视频会进入全屏。我确实注意到,在Safari中做这件事时,一切都如预期。
有人能帮我处理这件事吗?我到处找都找不到。
以下是我为说明这个问题所做的测试应用程序的示例:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
// Insert code here to initialize your application
NSURL *url = [NSURL URLWithString:@"https://www.youtube.com"];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
[[[self webView] mainFrame] loadRequest:urlRequest];
[self.window setContentView:self.webView];
//When YES WebView will use Flash if available, else will use HTML5
BOOL shouldUsePlugin = YES;
if (shouldUsePlugin == YES) {
[[[self webView] preferences] setPlugInsEnabled:YES];
//Test 1: Using Flash
} else {
[[[self webView]preferences]setPlugInsEnabled:NO];
//Test 2: Using HTML5
}
}
对于使用较新WebKit API(WKWebView
)的用户,请参阅此处的答案:WKWebView Mac Browser Enable fullscreen html5?用于在HTML5内容上启用全屏
只需使用他们的youtube播放器框架。他们有这样的吊舱。
pod"YouTubePlayer"
你只需要加载,播放,停止,清除。并且您的工作已完成