不是来自简历时的 Cordova 调用函数

Cordova call function when NOT from resume

我正在收听 Cordova 中的 devicereadyresume 事件。

在我的 deviceready 中,如果应用程序 而不是 resume 开始,我只想调用一个函数。

即我可以实现以下目标吗?

document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
  document.addEventListener("resume", onResume, false);
  doOnlyWhenNotFromResume();
}

function onResume(event) {
  doOnlyWhenFromResume(event);
}

科尔多瓦版本 7.1.0

您可以使用布尔标志来避免 doOnlyWhenNotFromResume() 函数在恢复时被调用。如果您在 pause 事件发生时设置此标志,它应该可以工作,因为在暂停应用程序并再次 "warm-starting" 应用程序后,将触发恢复事件。

在您的函数可访问的范围内声明此变量:

var isResume = false;

并修改您现有的代码如下:

document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
  document.addEventListener("resume", onResume, false);
  document.addEventListener("pause", onPause, false);

  if (!isResume) {
    doOnlyWhenNotFromResume();
  }
}

function onResume(event) {
  doOnlyWhenFromResume(event);
}

function onPause(event) {
  isResume = true;
}