Extension Packaging

拡張機能は、利用者がダウンロードやインストールできる Installable Bundleの形式または、pre-パッケージされてアプリケーションまたは拡張プログラムと共に提供されます。拡張機能はXULプログラムの機能を拡張するための chrome、コンポーネント、およびその他のファイルを提供するのに ディレクトリ構造を使っています。

すべての拡張は、拡張機能についてのメタデータ(ユニーク ID、バージョン、制作者、および互換性情報など)を含む install.rdf ファイルを備えなければなりません。

拡張機能のファイルと install.rdf の用意ができたら、いくつかの方法で拡張機能のインストーラを作ります: 拡張機能ディレクトリをユーザがインストールできる XPI (xpinstall) ファイルに ZIP 圧縮、ユーザのアプリケーション profile ディレクトリに拡張機能ディレクトリを解凍するか、拡張機能を Windows レジストリに登録する。

Gecko 2.0 note
(Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1)

Starting in Gecko 2.0 (Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1), XPI files are no longer unpacked when extensions are installed. Instead, the XPI itself is placed in the extensions directory, and files are loaded directly out of the package. See Updating extensions for Firefox 4 for details.

拡張機能 XPI の作り方

XPI (XPInstall) ファイルは単純な ZIP ファイルで、拡張機能ファイルと ZIP の root には install.rdf を含んでいます。ユーザは XPI ファイルを Web サイトからダウンロードしたりローカルファイルを拡張マネージャウインドウにドロップしてインストールできます。

Firefox が識別する XPI ファイルの MIME typeは、application/x-xpinstall です。たいていの HTTP サーバはデフォルトで .xpi 拡張機能に対してこの MIME type を返すようになっておらず、大抵、HTTP サーバに設定が必要です。 Apache HTTP Server では、次の指示を設定ファイルまたは .htaccess に追加します。

AddType application/x-xpinstall .xpi

Install Extension Files Directly

もし、アプリケーションの位置を知っていれば (アプリケーションの一部として拡張機能をインストールする場合など)、拡張機能ファイルディレクトリを <appdir>/extensions/<extensionID> にインストールできます。拡張機能は次回アプリケーションを起動したときに自動的に拡張マネージャーに現れます。

When using this method you must verify that the file system permissions for the directories and files for the extension are set properly. Otherwise, the Extension Manager may not function properly with the extension or the extension itself may not work properly.

Windows レジストリを使って拡張機能の場所を登録する

External installers (such as the Java runtime) may wish to install application integration points as extension even if the application is not yet installed. This can be accomplished on Windows using the registry.

マルチアイテム拡張 XPI

いくつかの場合、単一 XPI ファイルで複数の拡張/テーマをインストールすることがあります。 A special kind of extension XPI called the Multiple Item Package explains how to create this kind of package. (Firefox 1.5/XULRunner 1.8 required.)

Official References for Toolkit API

Official References. Do not add to this list without contacting Benjamin Smedberg. Note that this page is included from the pages listed below. So: Don't Add Breadcrumbs!


Contributors to this page: Jeremie, Verruckt, ethertank, Mgjbot, Okome
最終更新者: ethertank,