chrome.appなPattern&Practice

2013-03-08T00:00:00+00:00 Chrome Extension JavaScript

Chrome Extensionとかだとウィンドウ出してなんか出すっていう場合だとブラウザアクションとかが良くありえるパターンだと思うのですが、 https://github.com/GoogleChrome/chrome-app-samples によるとchrome.app.windowなのを作ってアプリの画面を新しいウィンドウを作ってそこに出すっていうパターンもある模様。

manifest.json

{
  "name": "test",
  "version": "0.1",
  "manifest_version": 2,
  "app": {
    "background": {
      "scripts": ["main.js"],
      "persistent": false
    }
  }
}

App BackgroundPageじゃなくてApp EventPageにするデメリットがどう出てくるかって所は微妙だけど(githubな所だとEventPageではない模様)

main.js

chrome.app.runtime.onLaunched.addListener(function() {
  chrome.app.window.create(
    "index.html",
    { "id": "testapp", "width": 800, "height": 800 }
  );
});

新しいタブなページのアプリペイン側に上記のアプリが表示される。それをクリックする事でindex.htmlを新しいウィンドウを作って読み込む的な感じ。id付けなかったら複数のウィンドウとか作るのとかも可能

っていう感じでブラウザアクションを使わずに新しいウィンドウで提供する拡張アプリっていうパターンもあるっていう感じ

詳しくは上記のgithubな所のソースをだらだら読んでみるのもええんやないかと

Backgridを試してみる FuelPHPのコントローラーをWebサーバーにデプロイする事無くテストする