с некоторой периодичностью отправлять данные в бэк.
Планирую делать это через Service.
WorkManager не подходит, т.к. у него минимальный интервал 15 минут. Нужно чаще.
Какая есть альтернатива?
foreground service
Нет, мне нужно, чтобы это происходило в бэкграунде и не мешало юзеру пользоваться приложением.
Ловля бродкаста ON TICK. Приходит раз в минуту Но приложение все равно уйдет в Doze mode и перестанет его обрабатывать рано или поздно. В доз моде кроме того и сеть рубится. Форграунд может еще спасет + отключение юзером оптимизации
расскажите же скорее, где вы увидели что foreground service а) работает не в бэкграунде и б) мешает юзеру пользоваться приложением?
Вот тут. Про "мешало пользоваться" - имела в виду, что никаких видимых для пользователя признаков о том, что выполняется какая-то работа быть не должно.
Эээ то есть вы втихую хотите куда то слать постоянно данные и жрать батарейку по 5% в час незаметно для юзера?
воркманагер ж))
Именно так.
воркманагер ваше решение
15 минут не могу принять... Надо чаще.
запускаем простой из простого по окончанию
ЛОЛ и это работает?
не поверишь. но да. периодик типа мин 15 минут. а обычный из обычного хоть спустя 10 сек запускай
Можно подробнее? Что за конструкция?
воркманагер. простой воркер. когда закончили работу запускаем еще один такой же с делей 10 сек
поскорее бы гугл закрыл такие дыры, намного понятнее стало бы - мусорное приложение для сбора хероборы или нормальное
как же меня бомбануло когда мой миуи сказал что вк в фоне микрофон работает
@JohnnySC Вот задача.
Да как-бы только при запросе с ретрофита его отдает
отправлять данные только когда прилага работает?
сравни запрос с тем что работает в постман. залогируй через интерсепторы
Она всегда работает ) Еще и в kiosk режиме. У нее судьба такая....
тогда не парься вообще)) ни фон ни форграунд не нужен. джава.утил.таймер и го
а нельзя сокет сделать?
так если у вас киоск режим, чем вам помешает уведомление?)
Рано или поздно да. Но блять не заакрыл а позволил юзеру решать. Есть миллион реальных произв задач где андроид юзается как дешевое мониторящее устройство со связкой с IoT
Требования бизнеса.
прикинь каждые 15 сек ПИНГ ПИНГ ПИНГ ПИНГ
Действительно, если оно всегда работает, то зачем сервисы?
Ну мы не настолько злые, чтобы собственные сервера каждые 15 секунд ддосить...
думаю джава таймер подойдет лучше всего. у него таймер таск в своем потоке если не ошибаюсь
Можно точное назчание класса?
java.util.Timer scheduleAtFixedRate и в космос
Он ничего не знает об андроиде и не вызывает ничего если приложение остановлено системой только
так для таких вещей есть device owner, я в этой сфере работаю, знаю не понаслышке)
зочем, один раз сервис на старте запустил и делай там что хочешь
.эээ так его же надо закупать на спец аппараты у спец поставщика. Не есть а был когда то
действительно. незачем убивать то,что родится опять через 15 сек
неа, dpm set-device-owner в adb, ну или по модному через nfc
Обсуждают сегодня