Отслеживание фонового местоположения в веб-приложении (сервисный работник) - PullRequest
0 голосов
/ 21 апреля 2020

Мне интересно, можно ли отслеживать местоположение, пока веб-приложение находится в фоновом режиме?

Я слышал, что эта функция находится в стадии разработки для сервисных работников, хотя я не могу найти какую-либо литературу по точно как это сделать.

Было бы хорошо просто сохранить местоположение на телефоне, пока телефон не будет разблокирован, а затем отправить данные о местоположении по сети, когда пользователь снова откроет браузер / вкладку.

Если это невозможно с чисто веб-технологиями, что будет лучшим способом сделать это. Можно ли создать собственное приложение для обработки отслеживания и при этом иметь в качестве основного интерфейса веб-интерфейс?


Немного контекста

Я разрабатываю приложение для благотворительной организации, которое позволяет пользователям отслеживать себя, когда они выходят из дома. c .. Пользователи, вероятно, заблокируют свои телефоны, когда находятся в патруле, поэтому мне нужно учитывать это. Я собрал большинство приложений в виде веб-приложения, и было бы большой (и скучной) задачей переписать его как нативное приложение android и apple!

1 Ответ

0 голосов
/ 21 апреля 2020

Нет, это невозможно по соображениям конфиденциальности. Вы также не можете выполнять какие-либо точные графики с помощью сервисных работников, когда приложение находится в фоновом режиме, например. используйте setTimeout или около того (регулируется браузером).

Вы, вероятно, читали об API фонового syn c, который позволяет вам попросить Service Worker представить некоторые данные, когда соединение доступно. С помощью этого API вы можете реализовать повторную попытку для форм POST и тому подобного, но без отслеживания местоположения. Узнайте больше здесь: https://davidwalsh.name/background-sync

...