Till_Its_Gone сказал(а):
↑ Ну речь про то, какие ограничения и возможности у firebase не шла, а просто как работают пуши и сам дивайс.
Нажмите, чтобы раскрыть...
Я еще в первом сообщении сказал, что реал-тайм чатов, никто никогда не юзает пуши для передачи сообщений, потому что:
- есть ограничения
- отсутствие реалтайма (нормального) - они придуманы были для других целей
Максимум что можно 3-х уровневый конвеер делать с 2-мя службами, одна из которых системная, на пуши гугловые, ее вотчит юзер служба, которая сама обращается на сервер пока девайс не захолджен (юзер службы помеченные как системные, могут и в холде работать в целом, но это слабая гарантия, и управление питанием может такие службы клозать) - перехватывает пуши до истечения тайм-аута работы (принято что бы юзер службы не юзали дохера модем), которой собственно управляет приложение:
1. активная стадия - работает апла, через свою службу, запрашивает сообщения/сама отправляет (с мейн треда ты не можешь ходить в сеть за данными, делается это через asynctask, или как нормальные люди делают - через таки службу)
2 ----проходит первый тайм аут (нет входящих/исходящих), служба засыпает, передавая управление на пуши, в случае если юзер холдит девайс - делается это принудительно.
3 ----теперь системная служба пушей, по первому пушу для приложения, разбудит службу приложения, та сходит на сервер заберет все данные, и запустит месенджер.
4. по запуску месенджера, прием пушей останавливается встроенной службой, и управление передается слубже юзерской
Если бы ты удосужился прочитать мои сообщения, или документацию, мне бы не пришлось ту расписывать весь это сщит.