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

How to check whether the app is in foreground or background

本文关键字:前台 后台 应用程序 何检查 检查      更新时间:2023-09-26

我正在使用phone gap开发一个android应用程序。是否可以使用javascript检查应用程序是否在后台或前台运行?

因为我们可以通过调用navigator.app.exitApp()来关闭应用程序。我们还可以执行其他功能。

有什么功能可以告诉我们应用程序是在后台运行还是在前台运行?

事实上,我想让应用程序按以下方式工作。

若应用程序在前台,它应该显示一条提醒消息,而不是推送通知。若应用程序在后台,它应该显示推送通知。

非常感谢。

暂停:

这是一个在Cordova应用程序被置于后台时触发的事件。

document.addEventListener("pause", yourCallbackFunction, false);

详细信息

Cordova由两个代码库组成:原生代码和JavaScript。当本机代码将应用程序置于后台时,将触发暂停事件。

通常,在收到Cordova"deviceready"事件后,您会希望使用document.addEventListener附加一个事件侦听器。支持的平台

  • Android
  • BlackBerry WebWorks(操作系统5.0及更高版本)
  • iOS
  • Windows Phone 7

快速示例

document.addEventListener("pause", onPause, false);
function onPause() {
    // Handle the pause event
}

简历:

这是从后台检索Cordova应用程序时触发的事件。

document.addEventListener("resume", yourCallbackFunction, false);

详细信息

Cordova由两个代码库组成:原生代码和JavaScript。当本机代码从后台提取应用程序时,将触发恢复事件。

通常,在收到Cordova"deviceready"事件后,您会希望使用document.addEventListener附加一个事件侦听器。支持的平台

  • Android
  • BlackBerry WebWorks(操作系统5.0及更高版本)
  • iOS
  • Windows Phone 7

快速示例

document.addEventListener("resume", onResume, false);
function onResume() {
    // Handle the resume event
}

更多信息点击这里:

http://docs.phonegap.com/en/2.2.0/cordova_events_events.md.html#resume

http://docs.phonegap.com/en/2.2.0/cordova_events_events.md.html#pause

在我看来,你似乎要注册一个"暂停"事件——这会告诉你你的应用程序已经进入后台。

http://docs.phonegap.com/en/1.1.0/phonegap_events_events.md.html#pause

然后,您将注册一个恢复事件,以接收您何时处于前台的通知(尽管程序逻辑可能会在此时启动)。

http://docs.phonegap.com/en/1.1.0/phonegap_events_events.md.html#resume

我不是一个电话间隙用户,但当我查看api时,这些似乎是最明确的选择。