我正在研究 Chromium PPAPI。在查看了此处官方参考的所有 API 后:https ://developer.chrome.com/native-client/cpp-api-dev ,我很少发现任何可以被 JS 使用或直接与 JS 通信的 API。在我看来,一个插件进程会建立一个 PP::instance 并且这个实例中的所有函数都会被加载。以 video_capture.cc 为例,您可以在 chromium 源代码的 /ppapi/examples/video_capture 下找到它。在这个例子中,一个名为 VCDemoInstance 的自定义 PP::instance 注册了一些方法,但我发现只有 HandleMessage() 可以与 JS 层通信。在 JS 中,您可以使用 postMessage() 将某些内容传递给上面的 HandleMessage()。
所以这是我的关键问题:有没有办法在 PP::instance 中创建或定义一个可以被 JS 层直接使用或与之通信的方法?是否可以注册一个 JS 对象并像obj.apiFromPlugin一样调用 PPAPI ?至少我知道在 Opera JSPP 框架中是可以做到的。
如果有任何问题,请纠正我。你很感激。