Czytałem wiele postów dotyczących problemu z GCM, który dotyczy niektórych osób. Wygląda na to, że w niektórych urządzeniach/routerach/nośnikach powiadomienia są opóźnione. Doświadczyłem tego problemu z moim routerem: wiadomości przychodziły z dużym opóźnieniem na WIFI, ale pojawiały się natychmiast po wyłączeniu WIFI i połączeniu z siecią mobilną.Jak uniknąć opóźnień w wiadomościach GCM systemu Android/zmianie pulsu
Wygląda na obejście tego problemu, które można wykonać w aplikacji na Androida. Coś w rodzaju zwiększenia pulsu, które utrzymuje połączenie GCM przy życiu.
Czy ktoś może nam powiedzieć, co powinniśmy zrobić, aby uniknąć opóźnienia? Jak możemy utrzymać połączenie z GCM z aplikacji na Androida? Przykład kodu (i gdzie i jak go używać) byłby naprawdę pomocny.
This post wyjaśnia problem. Mówi, że "możemy utrzymywać połączenie przy życiu z pingem co dwie minuty z serwera GCM (który jest bezpłatny)". Jak możemy to zrobić?
Thanks a lot
następujące aplikacje wydają się rade. Niespodziewanie, pierwszy nie wymaga pozwolenia, drugi internet a trzeci jest tylko dla ukorzenionych telefonów:
https://play.google.com/store/apps/details?id=at.pansy.droid.gcmWifiFix
https://play.google.com/store/apps/details?id=com.elotro.pushheartbeat
https://play.google.com/store/apps/details?id=com.andqlimax.pushfixer
Dzięki Eran. Nie możemy tego zrobić, ponieważ musielibyśmy wysłać zbyt wiele powiadomień - mamy miliony zarejestrowanych urządzeń. Czy możemy zrobić "ping" z urządzenia (z aplikacji na Androida)? –
@FerranMaylinch To może być możliwe. Nigdy nie próbowałem wysyłać powiadomień z urządzenia do siebie, ale nie ma powodu, żeby to nie działało (w końcu urządzenie ma swój własny identyfikator rejestracyjny i wszystko, co musi zrobić, to wysłać żądanie HTTP do serwera GCM) . Jedynym problemem jest to, że działa tylko wtedy, gdy aplikacja jest uruchomiona. – Eran