GCM: jak uniknąć dławienia

Mój system Android musi wysyłać częste aktualizacje do aplikacji na tablet (kiosk zawsze podłączony do Wi-Fi i wtyczki zasilania).
GCM-HTTP (//developer.android.com/google/gcm/http.html) działa dobrze, ale w niektórych przypadkach może się zdarzyć, że pojedyncze urządzenie otrzyma wiele powiadomień powodujących dobrze opisany problem ograniczania przepustowości opisany tutaj (// programista. android.com/google/gcm/adv.html#throttling). Jest to problem, ponieważ ładunek w powiadomieniu ma ogromne znaczenie dla systemu. Jakie jest najlepsze rozwiązanie, aby temu zapobiec?

zaimplementować na serwerze usługę grupującą powiadomienia na tym samym urządzeniu i strzelać do nich z ograniczoną częstotliwością.użyj usługi XMPP. Chciałbym użyć GCM-XMPP (//developer.android.com/google/gcm/ccs.html), ale musisz być zalogowany na białej liście, więc nie sądzę, aby każdy mógł z niego korzystać. Jako alternatywę powinienem używać aSmack lub Quickblox zgodnie z zaleceniami (Android i XMPP: Aktualnie dostępne rozwiązania) i tu (Lepszy sposób na wdrożenie aplikacji do czatu za pomocą XMPP na Androida?) odpowiednio?zaimplementować podstawowe połączenie z gniazdem zgodnie z opisem w (//thinkandroid.wordpress.com/2010/03/27/incorporating-socket-programming-into-your-applications/)? W tym przypadku muszę wziąć pod uwagę możliwość chwilowej utraty połączenia?

ROZWIĄZANIE: Znalazłem rozwiązanie mojego pytania, czyli protokół XMPP. Na początku zaimplementowałem aSmack w aplikacji tabletu i skonfigurowałem serwer eJabberd działający lokalnie. Wdrożenie było dość łatwe. Po kilku tygodniach otrzymałem wiadomość od Google dla GCM-XMPP, która jest jeszcze szybsza do umieszczenia w aplikacji i działa świetnie!

questionAnswers(1)

yourAnswerToTheQuestion