У меня возникла проблема с интервалом сердцебиения в моем приложении IBM MobileFirst.
При первом запуске приложения все ок. Если я выхожу из сети, он распознает, что я не в сети. Проблема в том, что если я выхожу из сети, а затем снова подключаюсь к сети, приложения пытаются отправить пульс и продолжают пытаться отправить его в течение примерно 20-30 секунд. Даже после того, как я был в сети с моим телефоном, я все еще «не в сети» в приложении, потому что сердцебиение все еще пытается отправить и быть отправленным успешно. Через 20-30 я получаю сообщение об успешном подключении, а затем приложение распознает, что я в сети. Есть ли способ избежать этой «задержки»?
Я хочу, чтобы приложение как можно скорее узнало, что я не в сети/не в сети. Есть ли способ добиться этого?
Это мой initOptions, где я использую тайм-аут:
var wlInitOptions = {
timeout: 5000,
.
.
.
И это мой app.js, где я использую WL.Client.setHeartBeatInterval
WL.Client.setHeartBeatInterval(5);
document.addEventListener(WL.Events.WORKLIGHT_IS_CONNECTED, function (event) {
WL.Logger.error('We are online, lower the heartbeat');
WL.Client.setHeartBeatInterval(5);
}, false);
document.addEventListener(WL.Events.WORKLIGHT_IS_DISCONNECTED, function (event) {
WL.Logger.error('We are no longer online, raise heartbeat');
WL.Client.setHeartBeatInterval(1);
}, false);