Проблема спама с Google Geofence API и JobIntentService - PullRequest
0 голосов
/ 18 октября 2018

Я не понимаю, что происходит с моими вызовами Geofencing API, рассылающими спам по моему веб-API.

Вот что (иногда) происходит:

  1. Пользователь добавляет геозоны.
  2. Геозона обнаружена с помощью BroadcastReceiver, который ставит в очередь JobIntentService (для Android O +)
  3. Это вызывает уведомление о том, что геозона была переведена

ОнаДо этого момента работал идеально.

Отсюда он получает событие Geofence (ENTER или EXIT) и добавляет или обновляет их в локальной базе данных (Room).

A "syncЗатем вызывается метод для извлечения всех кэшированных геозон и отправки их в мой веб-API.

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

Есть идеи?Заранее спасибо.

...