我正在研究铬PPAPI。在查看了官方引用的所有API之后:https://developer.chrome.com/native-client/cpp-api-dev,我很少找到任何可以由JS直接使用或与JS直接通信的API。在我看来,一个插件进程将设置一个PP::instance,并且这个实例中的所有函数都将被加载。以video_capture.cc为例,您可以在铬源代码中的/ppapi/档/视频捕捉下找到它。在本例中,一个名为VCDemoInstance的定制PP::实例注册了一些方法,但我发现只有HandleMessage()可以与JS层通信。在JS中,您可以使用postMessage()向上面的HandleMessage()传递一些东西。
因此,我的关键问题是:是否有一种方法可以在PP::实例中创建或定义可由JS层直接使用或与JS层通信的方法?是否可以注册一个JS对象并像obj.apiFromPlugin?那样调用PPAPI至少我知道在Opera JSPP框架中,这是可以做到的。
如果有什么问题,请纠正我。你很感激。
发布于 2017-08-11 02:03:23
在深入研究PPAPI之后,我找不到用插件创建JS对象的方法。我终于切换到,它可以将内容API移植到JS。使用CefV8Handler绝对可以解决我的问题。
https://stackoverflow.com/questions/45204727
复制相似问题