Chrome 拡張機能サポート
Electron は Chrome 拡張機能 API のサブセットをサポートしており、主にデベロッパー ツール拡張機能と Chromium 内部拡張機能をサポートしていますが、他の拡張機能もサポートしています。
注意: Electron はストアのすべての Chrome 拡張機能はサポートしていません。Chrome の拡張機能の実装と完全に互換性を持たせることは Electron プロジェクトの 目標ではありません。
拡張機能の読み込み
Electron は解凍された拡張機能のみの読み込みをサポートしています (例えば .crx
ファイルは動作しません)。 拡張機能は session
ごとにインストールされます。 拡張機能を読み込むには、以下のように ses.loadExtension
を呼び出します。
const { session } = require('electron')
session.defaultSession.loadExtension('path/to/unpacked/extension').then(({ id }) => {
// ...
})
読み込まれた拡張機能は終了時に自動で記憶されません。アプリを実行する度にloadExtension
を呼び出さないと、拡張子は読み込まれません。
注意として、拡張機能の読み込みは持続する session でのみサポートされます。 拡張機能をメモリで一時的な session に読み込もうとすると、エラーが送出されます。
有効な拡張機能の読み込み、解除、クエリについての詳細は session
のドキュメントを参照してください。
サポートする拡張機能 API
いくつかの注意点はありますが、以下の拡張機能 API をサポートしています。 他の API も追加でサポートされる可能性がありますが、ここに記載されていない API のサポートは暫定であり、削除される可能性があります。
サポートする Manifest のキー
usage-limits
version
author
permissions
content_scripts
default_locale
devtools_page
short_name
host_permissions
(Manifest V3)manifest_version
background
(Manifest V2)minimum_chrome_version
指定可能な各キーの意味については、Manifest ファイルフォーマット をご参照ください。
chrome.devtools.inspectedWindow
この API はすべての機能がサポートされています。
詳しくは 公式ドキュメント を参照して下さい。