Chromeの拡張機能を作るために色々調べたので、その内容をまとめます。
3回に分けて記事を書きます。
Google Chrome Extensionの作り方 第1回 ~Hello World編~
Google Chrome Extensionの作り方 第2回 ~概要編~
Google Chrome Extensionの作り方 第3回 ~実践編~
きっかけは「Chromeのこんな機能が欲しい」と思ったけれど、
ネットで検索しても「これだ」というものが見つからず(探すのが面倒になったともいう)。
勉強にもなって調度いいので、求める拡張機能を自作することにしました。
Google Chrome Extensionの作り方 ~Hello World編~
概要
Chrome Extensionとは
Extensionとは、Chromeの拡張機能です(※以降、拡張機能といったらChrome Extensionのことを指します)。
公式の言葉を使うなら、Chrome用の「小さなソフトウェアプログラム」です。
Chromeの機能を強化したり、補ったりすることができます。
(この辺りは今更ですね)
拡張機能は、
HTML/JavaScript(jQuery)/CSS
Web作成に必要なこの3つの技術があれば作ることができます。
拡張機能のファイル
・manifestファイル(manifest.json)
その他必要に応じて、
・HTMLファイル
・JavaScript
・画像
など
manifestファイルは必須です。
それ以外のファイルは、拡張機能ごとに変わります。
配布の際はこれらを1つのフォルダにまとめ、ZIPファイルにパッケージ化します。
今回はHello Worldのレベルなのでmanifestファイルの部分は軽く流しますが、
次回はもう少し踏み込んだ内容を書きます。
「もう少し踏み込んだことを知りたいぞ!」という方は、
次回の記事を参考にしてください。
もちろん、公式ページを閲覧するのもありです。
Chromeの拡張機能を開発するなら、Chrome Developerのページを一読することをおすすめします。
https://developer.chrome.com/extensions
英語が読めない?
大丈夫です。Me tooです。
Hello World
今回はHello Worldレベルの簡単なものを作ります。
次の次の記事では、もう少し凝ったものを作ります。
概要
ポップアップにHello Worldを表示する。
構成ファイル
・manifest.json
・popup.html
以上です。
機能に直接は関係ありませんが、せっかくなのでアイコンも用意して表示しましょう。
・icon_16.png
・icon_128.png
ファイル名の数字はアイコンのサイズです。
manifest.json
{ "manifest_version": 2, "name": "Hello World Extension", "version": "1.0", "description": "This extension will display the 'Hello World' to popup.", "icons": { "128": "icon_128.png" }, "browser_action": { "default_title": "", "default_icon": "icon_16.png", "default_popup": "popup.html" } }
“manifest_version”は必ず指定します。現在は2以外指定できません。
“name”,”version”,”description”は名前の通りです。
manifest.jsonの文字コードがUTF-8以外だと、全角文字が文字化けを起こすので注意です。
“icons”はアイコンを指定します。アイコンがなくても動作します。
“browser_action”を指定すると、URLの外側にアイコンが表示されます。
“default_title”は表示されるポップアップページタイトルです。
“default_icon”はファビコンに使われます。
“default_popup”はポップアップに表示するHTMLです。ここに”Hello World”を書きます。
popup.html
<!DOCTYPE html> <html> <head> </head> <body> <p>Hello World</p> </body> </html>
これで準備完了です。
アイコンを含むこれらのファイルを1つのフォルダにまとめます。
フォルダ名は何でもいいです、ここでは”HelloWorld”にします。
Chromeに拡張機能を登録
Chromeに拡張機能を登録する方法は3つあります。
1.Chrome ウェブストアからインストールする(一般的)
2.「~.crx」というパッケージ化されたZIPファイルの拡張機能を読み込む(社内プラグインなど)
⇒最新版のChromeではcrxファイルの読み込みが無効化されているそうです
3.パッケージ化されていないフォルダを読み込む(今回はこれ)
Chromeから「設定」⇒「その他ツール」⇒「拡張機能」を選択して拡張機能のページへ。
拡張機能ページ上部に、「デベロッパーモード」というチェックがあるのでチェックを入れる。
すると以下のようにボタンが表示される。
ここで「パッケージ化されていない拡張機能を読み込む」をクリックし、
開いたダイアログで先ほど作成して1つにまとめたフォルダを選択する。
するとアイコンが表示されるようになる。
これでOK。
もし作成した拡張機能が、拡張機能ページやURL横に表示されていない場合は、
適当な拡張機能の「リロード(Ctrl+R)」を押してみてください。
もしうまくいかず、エラーが表示されてしまった場合は以下のことを疑ってみます。
・manifest.jsonに全角が入力されているのに文字コードがUTF-8以外
・JavaScriptにエラーがある
拡張機能を動かす
無事読み込めたら、URLの隣に新しいアイコンが追加されているはずです。
これをクリックしてポップアップに「Hello World」と表示されていればOKです。
ピンバック: Chrome拡張機能作成(アイコン+ポップアップ)
ピンバック: Chrome拡張 – Content Script
ピンバック: Chrome拡張 – background page
ピンバック: Chrome拡張 – APIを使う