我正在使用 Xcode 4.5.1 开发 cocoa 应用程序。我的应用程序使用 webview 并捆绑了一个插件以与该 webview 一起使用。

当我编译我的代码并运行我的应用程序时,它工作正常,并且插件被加载并在 webview 中使用。

但是,如果我为我的应用程序启用沙箱环境,它就会停止工作。插件未加载。

当沙箱用完时,我从我的插件中得到这个日志:

10/22/12 4:40:54.041 PM WebKitPluginHost[43018]: Instantiating Plugin

在沙箱中运行时,我没有从我的插件中得到任何东西,但是 webview 确实在我的插件 View 应该显示的位置显示了一个空白框。如果插件不存在,它不会显示缺少插件消息。

我尝试将此添加到我的应用程序的权利中:
com.apple.WebKit.PluginAgent

作为一个字符串
com.apple.security.temporary-exception.mach-lookup.global-name array

但没有运气。

你知道我如何调试这个吗?

最佳答案

查看我对 How do I add a Webkit plugin to my sandboxed OS X app WebView? 的回复

总结:在 32 位模式下运行是可行的,因为插件在与宿主应用程序相同的进程中运行。在 64 位模式下,插件代理似乎缺乏启动插件进程的权限,导致加载失败。

关于cocoa - 在沙盒 cocoa 应用程序中捆绑 NPAPI 插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13013997/

10-11 23:22
查看更多