2009-11-03 151 views

回答

15

是,像其他瀏覽器,你可以寫一個NPAPI插件,將與您的擴展comunicate。

請參閱相關的谷歌網頁at code.google.com

以及更一般的描述at wikipedia

+0

那爲什麼不直接寫在第一個地方NPAPI? – Pacerier 2014-10-31 15:10:28

36

NPAPI從鉻/歌劇爲過時的安全問題。

您仍然可以使用NPAPI如果你是針對Firefox,但如果Firefox跟隨趨勢,可能在某個時候禁用它。

你今天有更好的選項

使用氯化鈉,如果你只定位於Chrome

,您可以改用NativeClient(AKA的NaCl,AKA PPAPI - 辣椒插件API)

所有代碼跑NaCl內部是沙盒,所以它像一個JavaScript擴展一樣安全。

使用asm.js如果你指定部分平臺

使用Emscripten你可以編譯C/C++代碼轉換爲高度優化的JavaScript格式稱爲asm.js.它的設計具有接近本機的性能,現在有decent support from grade-A browsers except Safari。儘管目前Firefox的性能比Chrome好。

主要瀏覽器廠商也在致力於名爲WebAssembly新的標準,部分被asm.js啓發,但沒有準備好使用此文章的

+0

什麼是對PPAPI的瀏覽器支持?這是Chrome的唯一的東西,因此在未來其他瀏覽器使用的可能性很小? – Pacerier 2014-10-31 15:08:04

+0

由於現在基於Chrome,因此Opera也支持PPAPI。 – Eduardo 2016-01-21 23:35:47

+0

請注意,NPAPI並沒有太大改進,現在只有Safari/Firefox支持,因爲IE或Chrome都不支持它。 IE使用的ActiveX也被Microsoft Edge棄用。我猜測,構建本地瀏覽器插件並不容易跨瀏覽器。 – Eduardo 2016-01-21 23:36:35

0

至於說上,你可以使用NaCl溶液的鉻和asm.js與Emscripten適用於所有平臺,但它的反向工程比二進制更簡單。現在有一箇中間解決方案:webassembly - 大多數現代瀏覽器https://caniuse.com/#feat=wasm支持嵌入在瀏覽器中的LLVM字節碼。 因此,Emscripten可以將C++編譯爲wasm,大多數情況下它比asm.js更快。

相關問題