扩展程序获取当前打开的应用程序
答
使用chrome.windows.getAll列出app
类型和chrome.management.launchApp的所有窗口启动应用如果没有找到它的窗口。
必需权限在manifest.json中:"tabs"
,"management"
。
function launchApp(id, callback) {
chrome.windows.getAll({
windowTypes: ['app'],
populate: true
}, function(windows) {
if (windows.some(function(w) { return w.tabs[0].url.indexOf(id) > 0 })) {
if (callback) {
callback({state: 'already running'});
}
return;
}
chrome.management.launchApp(id, function() {
if (callback) {
callback({state: 'launched'});
}
});
});
}
用法:
var appID = 'lkbbjdgfngikaledbinmnhkappgpnklb';
launchApp(appID, function(state) {
console.log(state);
});
按照windows.getAll API “与 '应用',并仅限于扩展自己的窗口 '面板' 窗口类型”。我需要检查所有的应用程序:/ – DMkitten
不,这个引用与'windowTypes'没有指定时的默认状态有关。 – wOxxOm
好的,没错!谢谢! – DMkitten