Chrome 拡張機能の変更内容

拡張機能チームから、明けましておめでとうございます2023 年 10 月のブログ投稿で発表した新機能について、くつろいだままで過ごし、有意義な一年を過ごせたことを願っています。また、皆様からの貴重なご意見と、拡張機能のコミュニティへのご協力に感謝するとともに、

2023 年第 4 四半期にリリースされた機能の詳細と、2024 年初頭にリリースされる新機能をいち早くご紹介します。

User Scripts API

Chrome 120 以降では、Manifest V3 拡張機能で User Scripts API を使用してユーザー スクリプトのコレクションを管理し、ウェブページに挿入するタイミングと方法を決定できます。クイック スタートについては、User Scripts API サンプルをご覧ください。

ユーザー スクリプト API のデモのスクリーンショット

リーディング リスト API

同じく Chrome 120 でリリースされた Reading List API を使用すると、デベロッパーは [リーディング リスト] サイドパネルでメタデータを作成、読み取り、更新、削除できます。Reading List API のデモをご覧ください。

リーディング リスト API のデモのスクリーンショット

宣言型ネット リクエスト API のセーフルール

皆様のフィードバックに基づき、有効な静的ルールセットの上限を 10 から 50 に大幅に引き上げました。さらに、使用できる静的ルールセットの総数が 50 から 100 に倍増しました。詳しくは、Manifest V3 でのコンテンツ フィルタリングの改善をご覧ください。

その他の API のリリース

Cookie API

Chrome 119 では Cookies API が更新され、パーティショニングがサポートされるようになりました。partitionKey 属性を指定して、オペレーションを実行するパーティションを指定できるようになりました。

File Handling API

ChromeOS 120 で File Handling API を利用できるようになりました。これにより、ウェブ プラットフォームのファイル処理と同様に、指定された MIME タイプとファイル拡張子を持つファイルを拡張機能で開くことができます。

Push API

Chrome 121 以降では、拡張機能で Push API を使用して、通知を表示せずにサーバーからのメッセージを受信できます。つまり、サーバーと拡張機能間の通信方法は WebSocket だけではないということです。Push API は、拡張機能 Service Worker とシームレスに連携するように最適化されています。これには、メッセージの受信時に Service Worker を起動する機能も含まれます。Push API サンプルを試す。

ブラウザ間の互換性の強化

Google では、引き続き他のブラウザ ベンダーと連携して、クロスブラウザ互換性の向上に努めています。Chrome 121 以降、MV3 拡張機能のマニフェストに background.scripts、background.page、または background.persistent を含めると WECG でフィードバックが寄せられましたが、これを受けて、エラーではなく警告のみがトリガーされます(問題 1418934 を参照)。また、拡張機能と Firefox との互換性を高めるために tabs.Tab.lastAccessed プロパティも追加されました(問題 1419613 を参照)。

近日提供予定の機能...

  • WebAuthn API: 拡張機能がホスト権限を持っているウェブサイトの RP ID をアサートできるようになります。詳しくは、こちらのメールをご覧ください。
  • 関数のシグネチャが Promise と互換性がない場合(chrome.desktopCapture.chooseDesktopMedia() など)を除き、すべての非同期 Chrome API メソッドで Promise がサポートされるようになり、使いやすくなります。下位互換性のためにコールバックは引き続き機能します。

ドキュメントの更新情報

昨年の大きな目標は、Chrome 拡張機能のドキュメントを改善することでした。具体的には、スタートガイドや入門ガイドの追加、新しい MV3 移行ガイドの公開などを行いました。Google は昨年末に次の大きな一歩を踏み出しました。すなわち、ユーザーのニーズにより的確に応えるために再編成に着手しました。

新機能の概要は次のとおりです。

  • シンプルなナビゲーションと改善された構造により、拡張機能と Chrome ウェブストアの記事に簡単にアクセスできるようになりました。
  • トピックにすばやくアクセスするためのサイドバー フィルタを追加しました。たとえば、リファレンス API のページでは、「tab」でフィルタして、タブ関連のすべての API を表示できます。
API リファレンスを名前でフィルタリングする
API リファレンスを名前でフィルタリングする
  • 新しい拡張機能のデベロッパーのための学習ジャーニー。
スタートガイド ページ
スタートガイド
  • コード スニペットをワンクリックでコピー。
コードをコピーしています
コードのコピー
  • ダークモードに対応しており、暗い場所でも見やすくなりました。
ドキュメントでのダークモードの切り替え
ドキュメントでのダークモードの切り替え
  • 頻繁に使用されるリファレンス ページをすばやく見つけられるように、コレクションを追加しました。
展開されたコレクションのプルダウン
展開されたコレクションのプルダウン

これは、ドキュメントを改善するための第一歩です。今後、新しいリファレンス コンテンツ、概念に関する記事、チュートリアルを追加するとともに、古いコンテンツを更新する予定です。ご意見、ご感想をお聞かせください。今後のサービス改善に役立てさせていただきます。

今後のガイド

  • User Scripts API のチュートリアル。
  • サーバーサイド イベントからの通知を処理するさまざまな方法を検討している、リアルタイム更新に関する新しいガイダンス。
  • 方法」セクションに新たに項目を追加しました。

新しい動画: Simeon とともにプラットフォームの進化を探る

Web Extensions Community Group(WECG)の共同議長である Simeon Vincent が、ウェブ拡張機能の複雑さと未来について DevRel チームと話し合いました。

会話の焦点は次のとおりです。

  • ブラウザ間で拡張機能の動作を標準化する。
  • Manifest V3 への移行に関する開発上の課題に取り組む
  • 拡張機能が AI を拡張機能に統合する方法

その他の更新

  • 拡張機能で WebHID API を使用して、キーボードなどの標準的なデバイスと、ゲーミング グローブや視線追跡デバイスなどの独自のデバイスに接続する方法を学びます。
  • 拡張機能で WebUSB API を使用して、フラッシュ ドライブ、バーコード スキャナ、ロボット コントローラ、USB 顕微鏡などの USB デバイスに接続する方法を学びます。
  • 拡張機能をマニフェスト バージョン 3 に移行すると、その拡張機能は外部サーバーの JavaScript コードを使用できません。リモートでホストされるコードガイドをご確認ください。このガイドでは、Chrome ウェブストアで拡張機能が Blue Argon で不承認となるのを防ぐために、リモートコードに代わる方法のガイダンスを提供しています。

拡張機能のデベロッパー コミュニティに対する貢献に改めて感謝いたします。2024 年は、拡張機能のエコシステムを形成、強化するために、皆様の分析情報とフィードバックが重要になります。皆様からのご支援により、さらに 1 年も前進することを楽しみにしております。