Chromeウェブアプリは基本的に多重起動可能(複数のタブで開ける)。 そのため、ステートフルなウェブアプリで多重起動されてしまうと状態管理がめちゃくちゃになってしまう危険性がある。 ということでChromeウェブアプリの多重起動を抑制し、単一起動に限定させてみるテスト。 background_pageで以下のスクリプトを走らせとけばOK。 // ウェブアプリを開いているタブ var theTab = undefined; function changedHandler(tab) { // chrome.extension.getURL(path)で指定したリソースへのフルパスが取得できる // 引数pathはmanifest.jsonで定義したlocal_pathと一致させること if (tab.url === chrome.extension.getURL("index.html"))