Кордова вызов функции, когда НЕ из резюме - PullRequest
0 голосов
/ 03 сентября 2018

Я слушаю deviceready и resume события в Кордове.

В моем deviceready я хочу вызывать функцию, только если приложение не , начиная с resume.

т.е. я могу достичь ниже?

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

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

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

Cordova версия 7.1.0

1 Ответ

0 голосов
/ 05 сентября 2018

Вы можете использовать логический флаг, чтобы избежать вызова функции doOnlyWhenNotFromResume() при возобновлении. Если вы установите этот флаг, когда происходит событие pause, оно должно работать, потому что после приостановки приложения и повторного «горячего» запуска приложения запускается событие возобновления.

Объявите эту переменную в некоторой области, где она доступна для ваших функций:

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;
}
...