Запуск logi c при открытии прогрессивного веб-приложения - PullRequest
1 голос
/ 01 марта 2020

У меня установлено прогрессивное веб-приложение, т.е. веб-страница, которая была «добавлена ​​на домашний экран» на мобильном телефоне / планшете с помощью Firefox, Chrome или Safari; данный вопрос актуален для всех трех.

Приложение опирается на данные, которые обновляются в фоновом режиме каждые, скажем, через 5 минут, через фрагмент JavaScript, который мы будем называть * 1003. *. В настольном браузере это будет нормально работать через что-то вроде

$(document).ready(function() {
    updateData();
    setInterval(updateData, 5*60*1000);
});

, но для прогрессивного веб-приложения это не идеально, потому что пользователь может получить обновление, закрыть приложение, только открыть его снова через час, а затем придется подождать пять минут, чтобы получить следующее обновление.

Поэтому мой вопрос звучит так:

Есть ли хороший способ узнать, открыл ли пользователь только что прогрессивное веб-приложение, независимо от того, будет ли оно размещено в Firefox, Chrome или Safari (или что-то еще?) через долгое время и требуется ли обновление?

1 Ответ

2 голосов
/ 01 марта 2020

Это будет работать, когда фокус на вкладке / окне и когда браузер снова открыт в мобильном телефоне

$(window).on('focus', function() { updateData(); });
...