Javascript 在应用程序关闭前运行函数

Javascript 在应用程序关闭前运行函数,javascript,angularjs,cordova,ionic-framework,Javascript,Angularjs,Cordova,Ionic Framework,我是否可以调用某种函数来监听应用程序是否即将退出、关闭或进入后台。。基本上是指“用户已停止使用应用程序”的任何事件 我是我的应用程序我建立了一个“用户日志”,在用户浏览应用程序时跟踪用户。我不想在这些事件发生时不断地向服务器发送少量数据,而是想在用户停止使用应用程序之前一次性发送整批数据(同样,这是否意味着完全关闭应用程序,将其发送到后台等) 最后,如果这样一个函数确实存在。。你把这个函数放在哪里?在你的app.js中?或者您必须将该侦听器放在应用程序的每个控制器中吗?您可以从Cordova文档

我是否可以调用某种函数来监听应用程序是否即将退出、关闭或进入后台。。基本上是指“用户已停止使用应用程序”的任何事件

我是我的应用程序我建立了一个“用户日志”,在用户浏览应用程序时跟踪用户。我不想在这些事件发生时不断地向服务器发送少量数据,而是想在用户停止使用应用程序之前一次性发送整批数据(同样,这是否意味着完全关闭应用程序,将其发送到后台等)


最后,如果这样一个函数确实存在。。你把这个函数放在哪里?在你的
app.js中
?或者您必须将该侦听器放在应用程序的每个控制器中吗?

您可以从Cordova文档中查看此事件列表:

特别是:

将应用程序置于后台时触发该事件

document.addEventListener(“暂停”,yourCallbackFunction,false)


这段代码在ionic2本机应用程序出口和浏览器中都可以使用。在浏览器中,当按下URL重新加载按钮或关闭浏览器选项卡时,会发生这种情况

platform.pause.subscribe(e => {
  this.OptionsSave();
});

window.addEventListener('beforeunload', () => {
  this.OptionsSave();
});

谢谢,你会把这个函数放在哪里?App.js或在您的每个控制器中都有这样的侦听器?在我看来,您可以在App.js中的
App.run()
function中添加这些事件侦听器这在有人从应用程序中刷卡的情况下效果很好,但是当我最小化或切换到其他应用程序时,是否有方法调用函数?您是否找到了上述解决方案,我还需要相同的事件,如果用户关闭了应用程序,则更新db中的字段值。
暂停
事件als也会在应用程序待机状态下运行,或者其他一些导致焦点模糊的操作。您可以在
pause
resume
事件中看到大量日志。我想真正的应用关闭前事件并不存在。因为退出不应该被应用程序延迟。它由操作系统(和用户)控制。在这种情况下运行代码将是时间关键的。