2016-06-15 11 views
0

Chrome拡張機能とChromeアプリがあります。これらのアプリはメッセージングでお互いに通信できます。 Chromeアプリが実行されていないときにのみ拡張機能を使用するようにするアクションがあります。 ChromeアプリのIDを指定すると、Chrome拡張機能が動作している場合、どのように検出できますか?他のChromeアプリが実行されているかどうかを検出する

私は、クロムアプリケーションからのライフサイクルイベントをクローズして中断して使用することを試みましたが、その理由はさまざまな理由から可能ではありません。検出する他の方法はありますか?

+0

[chrome.management](https://developer.chrome.com/extensions/management) –

+1

https://developer.chrome.com/extensions/messaging#外部 –

+0

アプリの「実行中」を定義します。窓は開いていますか? – Xan

答えて

0

さて、あなたはすでにメッセージングを使用しているので、おそらくアプリケーションのイベントページは、あなたがそれを呼び出す場合、アプリケーションが起動されていなくても、答えるために目を覚ますでしょう。

"実行中"は、ウィンドウが開いていると定義します。イベントページから、次のことができcheck that

chrome.runtime.onMessageExternal.addListener(function(message, sender, sendResponse) { 
    /* ... */ 
    if (chrome.app.window.getAll().length) { 
     // Launched 
    } else { 
     // Not launched 
    } 
}); 
+0

良いアイデア!ありがとう! – Nullqwerty

-1

ような何か:

chrome.management.get(appId,function(theapp){ 
    if(theapp.enabled){ 
     // it is running 
    } else { 
     // it is not running 
    } 
}); 
+2

私が理解していることは、有効か無効かは、chrome:// extensionsページで有効になっているチェックボックスがチェックされているかどうかにあります。これは本当ですか? – Nullqwerty

関連する問題