如何查找电子应用程序是否在前台?

ama*_*mal 4 electron

我有一个要求,只有当它在前台时,我才想在电子应用程序中执行一个操作。

它是一种电子反应应用。在安装组件时,我想安排一个定期任务,该任务仅在应用程序处于焦点或被用户使用时运行。并在应用程序进入后台时暂停任务。

我们如何检测 Electron 应用程序是否处于前台?

Seb*_*lor 8

您可以使用 中的isFocused方法BrowserWindow。要获得您自己的 BrowserWindow,您可以这样做:

remote.BrowserWindow.getAllWindows();
Run Code Online (Sandbox Code Playgroud)

这将返回您应用程序的所有窗口。因此,要获得第一个/主窗口,您可以像这样解构数组:

const [yourBrowserWindow] = remote.BrowserWindow.getAllWindows();
console.log(yourBrowserWindow.isFocused());
Run Code Online (Sandbox Code Playgroud)