Size: a a a

StartAndroid Ru Kotlin

2020 December 01

OR

O R in StartAndroid Ru Kotlin
Пуш с сервера в любом случае лучше, чем опрос сервера по таймеру
источник

EA

Efim Arisov in StartAndroid Ru Kotlin
Petrov Sergey
Но мне идея про пуш и забирания ивентов не нравится если честно. Лучше он сначала заберет ивенты, а потом покажет пуш
Можешь делать сервер на сокетах, так тебе проще будет.
Создашь при не обходимости сервис фоновый, если прил закрытый может быть, а данные должны приходить.
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
O R
Пуш с сервера в любом случае лучше, чем опрос сервера по таймеру
ой, хотелось бы не привязываться именно к пуш. Пуш(как мне кажется) служит не для коммуникации аплекухи с сервером, а именно для уведомления. Привязывать "забирать ивенты" к пушу - мне кажется не очень хорошая идея
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
Efim Arisov
Можешь делать сервер на сокетах, так тебе проще будет.
Создашь при не обходимости сервис фоновый, если прил закрытый может быть, а данные должны приходить.
вебсокеты постоянно висят как конекшены на сервере?
источник

EA

Efim Arisov in StartAndroid Ru Kotlin
Пока ты не закроешь соединение
источник

OR

O R in StartAndroid Ru Kotlin
Petrov Sergey
ой, хотелось бы не привязываться именно к пуш. Пуш(как мне кажется) служит не для коммуникации аплекухи с сервером, а именно для уведомления. Привязывать "забирать ивенты" к пушу - мне кажется не очень хорошая идея
Практически все мессенджеры так и работают - пуш их "будит", а потом они либо с сервера, либо с отправителя забирают данные.
Если без пуш, то сервер на сокетах и постоянный онлайн-канал держать
источник

OR

O R in StartAndroid Ru Kotlin
Но на большинстве смартфонов андроид либо усыпит приложение, либо закроет при нехватке памяти и тогда канал с сервером упадет до открытия/перезапуска.
источник

OR

O R in StartAndroid Ru Kotlin
Пуш для того и придумали, что система "будит"/запускает приложение и уж дальше оно работает
источник

OR

O R in StartAndroid Ru Kotlin
Как вариант - гибрид. Клиент держит канал с сервером и если клиент отвалился, то сервер его будит пушем.
источник

OR

O R in StartAndroid Ru Kotlin
Тогда данные от отправителя через сервер или напрямую на получателя без ивентов.
источник

OR

O R in StartAndroid Ru Kotlin
Но в этой схеме приложение активно фоном  будет постоянно и не даст уснуть телефону.
И это скажется на расходе энергии.
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
O R
Практически все мессенджеры так и работают - пуш их "будит", а потом они либо с сервера, либо с отправителя забирают данные.
Если без пуш, то сервер на сокетах и постоянный онлайн-канал держать
я о том же. Вебсокеты - это коннекты на сервере. Сразу вариант отпадает
источник

OR

O R in StartAndroid Ru Kotlin
Petrov Sergey
я о том же. Вебсокеты - это коннекты на сервере. Сразу вариант отпадает
Все зависит от задачи
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
а вот привязка к пушам - мне кажется плохая идея, пусть даже все меседжеры так работают. Потому что когда прилетает пуш и юзер этот пуш открывает, то происходит задержка. Пока аплека постучится на сервер, пока подберет ивенты, пока она их разберет и обработает - происходит задержка
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
O R
Как вариант - гибрид. Клиент держит канал с сервером и если клиент отвалился, то сервер его будит пушем.
Усложнение. Долна быть какая-то простая реализация
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
но вариант чекать ивент бокс по таймеру мне тоже не нравится. Это будет сервер нагружать
источник

OR

O R in StartAndroid Ru Kotlin
Petrov Sergey
а вот привязка к пушам - мне кажется плохая идея, пусть даже все меседжеры так работают. Потому что когда прилетает пуш и юзер этот пуш открывает, то происходит задержка. Пока аплека постучится на сервер, пока подберет ивенты, пока она их разберет и обработает - происходит задержка
Пуши заставляют систему будит приложение, а дальше оно реагирует как-то и это совсем не обязательно уведомление пользователя
источник

OR

O R in StartAndroid Ru Kotlin
По пушу клиент может отдать серверу айпи, а сервер может их отдать отправителю для прямой связи
источник

PS

Petrov Sergey in StartAndroid Ru Kotlin
O R
Пуши заставляют систему будит приложение, а дальше оно реагирует как-то и это совсем не обязательно уведомление пользователя
а есть какая-то реализация пушей без уведомления юзера?
источник

OR

O R in StartAndroid Ru Kotlin
Petrov Sergey
а есть какая-то реализация пушей без уведомления юзера?
Не знаю, читать надо
источник