如何检查应用程序现在是前台还是后台?

How to check if the application is foreground or background now?

电容器在应用程序进入后台或前台时提供 App plugin that allows to get a call back。但是如何随时获取应用程序的isActive值(a.k.a.foreground/background状态)呢?问题是我不知道应用程序状态,直到我订阅了 appStateChange 事件并且应用程序进入后台或前台。

document.hasFocus()

这将 return 一个布尔值。如果网络应用程序所在的选项卡具有焦点,那么它将 return true 否则它将 return false

来源:https://developer.mozilla.org/en-US/docs/Web/API/Document/hasFocus

最近 added 获取当前状态的方法是:

import {Plugins} from '@capacitor/core';

const {App} = Plugins;

let {isActive} = await App.getState();