29.09.2022 / 16:19 | |
Витаминыч Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| Мне в программке треба получать уведомления не только при запущенном приложении, но и когда оно полностью закрыто. Я правильно понимаю, что с 8 версии ондроеда Service жестко ограничили и он теперь не может вечно болтаться?
Если да, то как тогда выкручиваться? Можно задать запуск службы по расписанию какому-то или что-то ещё сделать?
А то в эмуле на 6 андро с закрытой прогой и в телефоне с 10 андро, но свёрнутой прогой уведомления прилетают, а если на 10 закрыть, как в эмуле, то всё. В сервисе у меня только OnCreate прописан, сам сервис стартует из MainActivity
__________________
わからない!! |
29.09.2022 / 17:22 | |
seeker Пользователь Сейчас: Offline
Имя: Дима Регистрация: 21.08.2016
| Бывают программы, который через сист. меню не "остановить". На Android 9.
|
29.09.2022 / 22:55 | |
aNNiMON Супервизор Сейчас: Offline
Имя: Витёк Регистрация: 11.01.2010
| Витаминыч, там надо вроде через Firebase Cloud Messaging слать пуш уведомление и тогда оно придёт. То есть не просто через твой сервис, а через сервис из google play service.
__________________
let live |
30.09.2022 / 06:34 | |
Helltar Пользователь Сейчас: Offline
Регистрация: 29.11.2011
| Витаминыч, или можешь через foreground service с постоянным уведомлением.
|
30.09.2022 / 12:35 | |
Витаминыч Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| aNNiMON, это видел, но не подойдёт, т.к. работает только в локальной сети без инета.
Helltar, а вот это уже подойдёт, как-то пропустил этот вид службы. Только один момент - такая служба, если её специально не выключать, закроется только при перезагрузке устройства?
__________________
わからない!! |
30.09.2022 / 14:07 | |
Helltar Пользователь Сейчас: Offline
Регистрация: 29.11.2011
| Витаминыч, по идеи да, это как музыка в плеере, в шторке постоянное уведомление (управление) и она играет пока ты не убьешь. В постоянное впихнуть что то аля "приложение работает" и слать другие нотификации по надобности. Это все бэд-практисис, но если для себя поделка -- сойдет.
|
30.09.2022 / 15:04 | |
Витаминыч Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| Не то, чтобы для себя. Есть сервер, который триггерится на запись в бд, проверяет количество записей и шлёт уведомление с этим количеством клиенту. Юзер собственно не должен просрать новые уведомления только потому, что случайно смахнул приложуху. Делаем типа мониторинга, но не для очень умных людей, им просто надо знать о наличии новых данных. Задача максимально уменьшить количество точек отказа. Так что не так уж и бэд, если других вариантов для локалки нету попросту. Будем всегда показывать уведомление, а в нем менять текст по ситуации
__________________
わからない!! |
30.09.2022 / 15:12 | |
Helltar Пользователь Сейчас: Offline
Регистрация: 29.11.2011
| Витаминыч, немного не понял с локалкой. Так если клиенты то они не на локалке, или что и как?
|
30.09.2022 / 17:40 | |
Витаминыч Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| Helltar, к вайфаю коннектятся, связи с внешним миром нет. К серверу стучатся по 192.168.168.*
__________________
わからない!! |
20.10.2022 / 23:31 | |
Витаминыч Супермодератор Сейчас: Offline
Имя: Василиус Откуда: RZN Регистрация: 20.04.2012
| По предыдущему вопросу - сделал через StartCommand и Foreground Service в итоге, все работает как надо. Единственное, на "умных" устройствах надо сразу отключать управление питанием для программы, чтобы не офалось через какое-то время.
Теперь вопрос такой: как элементам списка listview можно установить разноцветный фон элементов в зависимости от значений полей? Типа есть статус и надо фон красить красным, желтым и зелёным. Почему-то гуглятся только статьи про выбранный элемент, хотя с ним- то всё и так понятно. Но мне надо покрасить именно все элементы. Чаще конечно гуглится поисковый говноспам с кривым переводом стэковерфлоу 💩
__________________
わからない!! |