2009-09-15 74 views
4

我有一个Cocoa应用程序,我正在尝试编写显示网页的应用程序。这个网页在后台有一个嵌入式石英组合,在Safari中播放和工作,但它显示在我的Cocoa应用程序中(它只是在背景中显示缺少的插件图标)。浏览器插件无法在WebView实现中加载

奇怪的是,它在我测试它的另一台计算机上工作。我是否错过了一个可能会导致此问题的框架或插件?

另一个说明:没有插件似乎工作。例如,当WebView显示youtube.com时,它无法播放视频,因为它表示未安装Flash插件。再次,相同的代码在另一台计算机上工作,但不是这个。

谢谢!任何帮助将不胜感激!

+0

我与嵌入式Java Web应用程序有完全相同的问题。在IB中,我在检查器中启用了Java,但它不起作用,尽管它在Safari中很好。将尝试下面的方法,但如果任何人有任何想法... – Cocoadelica 2011-01-04 21:58:46

回答

4

您需要在WebView中明确启用插件支持。您可以在Interface Builder做到这一点(检查启用:插件复选框)或代码通过调用-setPluginsEnabled:在Web视图的WebPreferences对象:

WebPreferences *prefs = [webView preferences]; 
[prefs setPlugInsEnabled:YES]; 

如果您还启用插件,请检查插件与您正在创建的体系结构/运行时兼容。如果您正在构建64位或垃圾收集应用程序,则您加载的任何WebKit插件必须支持该体系结构。例如,Flash插件将不会加载到支持GC的应用程序中,尽管它以64位加载,因为作为NPAPI插件加载到32位沙箱中。

+0

非常感谢您的答复,但也没有工作。我真的认为它会! 我开始认为它可能与代码无关,但也许是我运行该应用程序的环境。因为正如我前面所说的,它在我实际上正在编写代码的计算机上工作正常,但是我正在测试的计算机无法正常工作。很奇怪! – zanneth 2009-09-16 22:35:42

+1

这两台机器的规格是什么?任何输出到控制台? – 2009-09-16 23:24:45

0

奇怪的是,唯一结束工作的就是在测试机器上而不是我开发的机器上。多么奇怪!