google-chrome - 有没有办法在chrome扩展中使用c++?

标签 google-chrome google-chrome-extension

是否可以在 chrome 扩展中使用 C++ 二进制文件?

最佳答案

出于安全考虑,Chrome/Opera 已弃用 NPAPI。

如果您的目标是 firefox,您仍然可以使用 NPAPI,但如果 Firefox 遵循这一趋势,它也可能会在某些时候禁用它。

你今天拥有的更好的选择是

如果您只针对 Chrome,请使用 NaCl

您可以改用 NativeClient (A.K.A. NaCL, A.K.A. PPAPI - Pepper Plugin API)

在 NaCl 中运行的所有代码都经过沙盒处理,因此它与 javascript 扩展一样安全。

如果您针对所有平台,请使用 asm.js

使用 Emscripten您可以将 C/C++ 代码编译为高度优化的 JavaScript 格式,称为 asm.js。它旨在具有接近 native 的性能,现在具有 decent support from grade-A browsers except Safari .虽然目前 Firefox 的性能比 Chrome 好。

主要的浏览器供应商也在研究一个名为 WebAssembly 的新标准,该标准部分受 asm.js 的启发,但在本文中尚未准备好用于主要用途

更新 2018-05-14

Native Client 被弃用,asm.js 被 WebAssembly 取代它正在成为为 Web 编译 C++ 代码的新标准。

关于google-chrome - 有没有办法在chrome扩展中使用c++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1666957/

相关文章:

tabs - 浏览器重启后在 Chrome 扩展中重新建立标签标识

javascript - Canvas 已通过本地 chrome ://extension URL 被跨源数据污染

google-chrome-extension - chrome 扩展中用户可配置的 url 权限

Javascript xml空标签错误

javascript - Three.js 示例未显示在 Canvas 上

html - 不同宽度的谷歌浏览器

python - IE 和 Chrome 无法使用 Selenium2 Python

jquery - 在 chrome 扩展中使用什么代替 window.location.href ?

javascript - 获取 YouTube 网站中的 Flash 视频状态 - Chrome 扩展

javascript - Chrome 扩展程序在单击按钮时弹出一个新窗口