2012-09-21 38 views
5

Estoy intentando construir una aplicación osx de cacao con una vista web de webkit integrada para mostrar una página web.Cocoa webview - pantalla completa de video html5 no funciona

En la página web hay elementos de video html5 que el usuario debería poder jugar en pantalla completa. Pero la pantalla completa solo muestra una pantalla negra en el león de montaña (10.8.2), el audio todavía se está reproduciendo, pero en el osx lion funcionó, ¿es esto un error o me perdí algo?

mínimo de la muestra:

Pasos:

crear una aplicación de cacao añadir una vista web conecte la propiedad "web" y añadir el marco webkit

Código:

#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 

FIJA EN OSX 10.8.3:

problema parece estar fijo en OSX 10.8.3 pantalla completa está trabajando ahora, incluso sin sandboxing como lo hizo antes de la OSX 10.8.2

+1

puedo confirmar este error y que funcionó hasta 10.8.1, por lo que no ha sido un cambio en la última actualización. – Conor

+1

A archivó pero informa con apple, esperemos y veamos – tripplet

+0

Excelente, lo hice también. Llenar duplicados es una de las pocas maneras de darle prioridad al error. – Conor

Respuesta

1

I fijó un proyecto con el código exacto informados implementar. Esto realmente falló para mí, y solo mostró una pantalla negra en modo de pantalla completa.

Sin embargo, esto parece ser un problema de sandboxing con WebKit. Después de hacer un sandboxing, la pantalla completa de la aplicación funcionó como se esperaba. (Usando 10.8.2)

La aplicación fue recinto de seguridad sin ningún tipo de permisos adicionales necesarios para hacer este trabajo:

enter image description here

+0

Funciona para el código de demostración, pero necesito permitir las conexiones salientes para mi aplicación, si habilito "Permitir conexiones salientes" vuelvo a la pantalla completa en negro, aceptada como respuesta, porque resuelve el problema publicado. Pero espero que alguien sepa una solución que permita las conexiones salientes – tripplet

-2

podría probar este código, espero que funcione con usted ... esto funciona en el iPhone y supongo que va a funcionar en osx

archivo de cabecera

UIWebView *webView; 

archivo

NSString *html = @"<html><body><video src=\"http://video-js.zencoder.com/oceans-clip.mp4\" controls></body></html>"; 

webView =[[UIWebView alloc] initWithFrame:CGRectMake(14, 57, 670, 675)]; 
     [webView loadHTMLString:html baseURL:nil]; 
[self.view addSubview:webView]; 
+0

UIWebView no está disponible en osx – tripplet

Cuestiones relacionadas