Локация переднего плана останавливает или задерживает обновления в фоновом режиме - возможные проблемы с отключением розAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Локация переднего плана останавливает или задерживает обновления в фоновом режиме - возможные проблемы с отключением роз

Сообщение Anonymous »

Locationservice Sopationservice с периодически останавливается на фоне-Влияние на отслеживание на основе WebSocket
Мы используем locationservice в нашем приложении Android, чтобы излучать GPS-координаты каждые 8 ​​секунд через websocketcocecocecocecocecocecocecocecocecocet (OKHTTP) . /> 🎯 Цель
бэкэнд ожидает последовательных обновлений местоположения для :
  • Движение по отслеживанию/устройство в реальном времени
  • Живое движение на панели управления администратором/клиентом
Когда обновления останавливаются на более 2 минут, бэкэнд отмечает пользователя как неактивный , что вызывает:
  • Неустойчивый статус (в автономном режиме/неактивном)










    /> Пропущенные сервисные события (например, истечение срока поездки, распределение Rider) < /li>
    < /ul>

    ✅ Что мы попробовали < /strong> < /h3>

    Настройка службы передней плат. startForeground() with persistent notification
    [*]Verified that notification stays visible
    [*]Still gets killed silently on some OEMs (e.g., Xiaomi, Vivo)

Battery Optimization Disabled[/b][/h4]
  • Requested ignoreBatteryOptimizations
  • Manually whitelisted the app in system settings
  • Improved runtime only slightly (~10–20% increase)

Socket Reconnection Logic

[*] Реализованное переподключение с использованием obhttp WebSockEcketListener
[*] Reconnects onfailure () , с экспоненциальным отступлением
[*] Оптимизация < /strong> < /h4>

Избегал тяжелой работы на основной потоке во время холодного запуска < /li>
Отложенные sharedpreferences < /code> чтения и диапазон JSON < /li>
помог с загрузкой, но не предотвращали выпадающие в локации < /li> < /br /ul>

< /br />
. /> ⚠, наблюдаемые проблемы

Silent Locationservice отказ
уведомление остается активным, но обновления местоположения

[*]
. Запустил

[*] режим дузы и блокировку экрана часто приостанавливает обновления местоположения через 3–5 минут

сетевой переключатель (Wi-fi ↔ Mobile) вызывает сока в списке без переключения (). /> < /li>
< /ul>

📜 Журналы образцов < /strong> < /h3>
[10:42:05] Location update emitted: lat=1.234, lng=103.123
[10:42:13] Location update emitted: lat=1.235, lng=103.124
[10:44:52] No updates for ~2 minutes

[10:45:03] WebSocket onFailure: java.net.SocketException: Connection reset
[10:45:05] Reconnection attempt failed silently
< /code>

❓ Вопросы < /strong> < /h3>

Как предотвратить молчащее обслуживание на переднем плане < /strong>, особенно на агрессивных OEMS? Государства?>

Подробнее здесь: https://stackoverflow.com/questions/796 ... sible-sock
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»