LoginSignup
0
1

More than 3 years have passed since last update.

Chrome拡張機能を作ってみよう(補足

Posted at

前回まではChrome拡張機能の作成についてでしたが
今回は補足としてインストールについてです。

Chrome拡張機能のインストール

chrome store

個人で使うだけならばデベロッパーモードで良いと思いますが、複数人で使うとなると
毎回ソースを渡してデベロッパーモードで入れて・・・なんてのが面倒になります。

そこでchrome storeに登録してアドレスを教える方法です。
使っている機能によっては、審査とかいろいろ面倒な部分もあり、時間もかかりますが
一度登録してしまえばあとは簡単です。

chrome storeでの公開方法については以下が参考になるかと思います。
https://support.google.com/chrome/a/answer/2714278?hl=ja

※グループ公開のみ登録料がかかるとなっていますが、現在はchrome storeに登録するのに登録料がかかります。

crxファイルからインストール

※現在、この方法は出来ません。
まず、crxファイルを作成します。
chrome://extensions/にアクセスしてデベロッパーモードになっていることを確認する。
拡張機能をパッケージ化から今回作成した拡張機能のフォルダを選択します。
image.png
初回であれば秘密鍵ファイルは指定なしで問題ないです。
アップデート等の場合は指定が必要です。
(秘密鍵ファイルが変わると拡張機能IDが変わります)

拡張機能をパッケージ化で「extensions.crx」と「extensions.pem」のファイルが作成されます。
pemファイルは保管してください。

前はcrxファイルをchromeブラウザにドラックアンドドロップでインストールできましたが
現在はインストールできません。

ポリシーを設定してインストール

では、chrome storeに登録しないとインストールできないのかというとそうでもありません。
AD(Active Directory)に参加していることが条件ですが
crxファイルをインストールすることは可能です。

こちらに記載がありますが

Chrome ウェブストアにないアプリや拡張機能を自動インストールするには、Microsoft® Active Directory® を使用するドメインにパソコンを参加させる必要があります。

とのことで実際にやってみます。
と言っても個人のPCはADに参加していないので今回はawsの無料枠を使ってAD環境を構築しています。

必要な環境は
DC(Domain Controller)、Webサーバー、クライアント(インストールするPC)です。
(ADの構築については割愛します)

まず、crxをwebサーバーに配置します。

次にインストール用のxmlファイルを作ります。

update.xml
<?xml version='1.0' encoding='UTF-8'?>
<gupdate xmlns='http://www.google.com/update2/response' protocol='2.0'>
  <app appid='jaffchbndhdmfpcloegdijfnoehbigha'>
    <updatecheck codebase='http://xxx.xxx.xxx.xxx/crx/extensions.crx' version='1.0' />
  </app>
</gupdate>

appidには拡張機能IDを記載しますが、デベロッパーモードで読み込んだIDとcrxでインストールした時のIDが変わります。
今回は、crxでのインストールが目的のためcrxファイルでインストールした時のIDが必要です。

(私は)ハマったのでID取得の手順を書いておきます。

chrome://extensions/にアクセスしてデベロッパーモードになっていることを確認する。
更新(F5)する。
画面にcrxファイルをドラックアンドドロップする。
これだけなのですが、更新を忘れると、あれ?ってなります。

このような表示になりますのでIDをコピーしてappidに貼り付けます。
image (1).png

update.xmlとcrxファイルをWebサーバーに配置します。
http://xxx.xxx.xxx.xxx/crx/update.xml
http://xxx.xxx.xxx.xxx/crx/extensions.crx

レジストリに登録

インストール方法については以下に記載があります。
https://support.google.com/chrome/a/answer/7532015?hl=ja

インストールする方法はいろいろありますが、
今回は「ExtensionInstallForcelist」を使ってインストールしていきます。

本来であればDCでグループを作ってマシーンに対してレジストリを登録して・・・
とするところなのですがADに参加していれば手動でレジストリを登録してもインストールは可能なので
今回は手動で入れます。

以下のキーを作成します。
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallForcelist

作成したキーに文字列値を作成します。
名前は特になんでも良いかと思います。
値のデータは
[Chrome拡張機能ID];[update.xmlのパス]
になります。
image.png

ポリシーを確認するため「chrome://policy」にアクセスします。

image.png

このように設定されていることを確認したらChromeを再起動します。

「chrome://extensions/」にアクセスして拡張機能がインストールされていれば成功です。
image.png

今回は手動でレジストリの値を設定したので、DCからレジストリの値を変更すると上書きされます。

Chrome拡張機能作成については以上です。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1