我正在尝试构建一个OSX Cocoa应用程序,其中集成了WebKit WebView以显示网页。
网页上有HTML5视频元素,用户应该能够在全屏模式下播放。但是,在Mountain Lion(10.8.2)上,全屏模式只显示黑屏,音频仍在播放,但在OSX Lion上可以正常工作,这是一个错误还是我错过了什么东西。
最小示例:
步骤:
创建Cocoa应用程序,添加WebView,连接属性“web”并添加WebKit框架
代码:
#AppDelegate.h
#import <Cocoa/Cocoa.h>
#import <WebKit/WebKit.h>
@interface AppDelegate : NSObject <NSApplicationDelegate>
@property (assign) IBOutlet NSWindow *window;
@property (weak) IBOutlet WebView *web;
@end
#AppDelegate.m
#import "AppDelegate.h"
@implementation AppDelegate
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
NSString *html = @"<html><body><video src=\"http://video-js.zencoder.com/oceans-clip.mp4\" controls></body></html>";
[[self.web mainFrame] loadHTMLString:html baseURL:nil];
}
@end
在OSX 10.8.3中已修复:
问题似乎已在OSX 10.8.3中得到解决,全屏模式现在可以正常工作,即使没有像OSX 10.8.2之前那样进行沙盒化。