Powiadomieniem pusch nazywa się każde powiadomienie wyskakujące w naszym telefonie lub innym urządzeniu. Natomiast zagłębiając się w ten temat, trzeba jasno określić, że nie każde powiadomienie można tak nazwać. W Androidzie możemy podzielić je na dwa rodzaje:
- powiadomienia utworzone przez aplikację
- powiadomienia przesyłane przez zewnętrzny serwer
Powiadomienia przesyłane przez zewnętrzny serwer nazywamy pushem.
Powiadomienia, które otrzymujemy są wysyłane przy pomocy internetu, ale nie tylko. Aplikacje w telefonie takie jak; budzik, mają możliwość wysyłania powiadomień o np. nastawieniu budzika. Do tego typu działań nie potrzebujemy ingerencji zewnętrznego serwera. Mówiąc fachowo, nie powinniśmy tego typu powiadomień nazywać powiadomieniem push.
Do jakich celów służą powiadomienia push?
Powiadomienia push służą do jednostronnej komunikacji serwera z naszą aplikacją. Wyobraźmy sobie, że jesteśmy programistą i chcemy powiadomić użytkownika, że otrzymał właśnie wiadomość w naszej aplikacji. Możemy skorzystać z dwóch sposobów. Możemy w określonych przedziałach czasowych połączyć się z serwerem i pobierać dane dotyczące nieprzeczytanych wiadomości. Wtedy wyświetlimy powiadomienie z odpowiednim komunikatem. Częste łączenie się z serwerem będzie skutkowało zużyciem baterii i pakietu internetowego.
Drugim rozwiązaniem możemy wysyłać powiadomienia bezpośrednio z naszego serwera w momencie otrzymania wiadomości przez konkretnego użytkownika. Co dowodzi, że powiadomienia push pozwalają na wyeliminowanie bezsensownego użycia baterii i pakietu internetowego.
Z kąta patrzenia programisty
W zależności od danych preferencji można podzielić to na dwa sposoby.
Przy pierwszym sposobie mamy możliwość skorzystania z systemu podobnego do iOS. Jeśli nasza aplikacja pracuje w tle i serwer wyśle powiadomienie, to system automatycznie wyświetli je za nas. W przypadku, gdy nasza aplikacja jest uruchomiona, to sami musimy zająć się odebranymi informacjami i poprosić system o wyświetlenie powiadomień z pewnymi atrybutami.
Przy pomocy drugiego sposobu całą obsługę wyświetlania powiadomień bierzemy na siebie bez względu na to, czy aplikacja działa w tle czy jest w danej chwili uruchomiona.
Czy ręcznie ustawiając powiadomienia będziemy w stanie sami sobie z tym poradzić?
Oczywiście, że tak. Przecież to nie jest trudne. Google uprościło to najbardziej, jak się dało, dla naszej wygody. Wystarczy, że wejdziemy w tryb i rozszerzymy odpowiednią klasę udostępniania przez Google i zaimplementujemy metodę odpowiadająca za odebranie powiadomienia. Jedyną przeszkodą i pewną niedogodnością jest przedostanie się przez dokumentację Google i odpowiednie skonfigurowanie naszej aplikacji, ale z tym też można sobie poradzić, tylko trochę czasu na to trzeba poświęcić. W razie problemów z dokumentacją można posiłkować się pomocą z innych serwisów.
Dlaczego powiadomienia push się nie powielają?
Z pewnością, jako użytkownik nie raz można było zauważyć, że w chwili, gdy odczytasz maila na komputerze, to znika powiadomienie wyświetlone na innych urządzeniach. Dzieje się tak dlatego, że nie ma takiego standardu, który by to zrobił za nas. Musimy wykonać to ręcznie. Patrząc pod kontem logiki działania można zaobserwować, iż serwer wykryje odczytanie przez nas wiadomości, to wysyła powiadomienia push z odpowiednim komunikatem do wszystkich urządzeń użytkownika. Czyli prościej mówiąc, aplikacja z systemem Android dostaje komunikat o odczytaniu wiadomości i usuwa powiadomienie odpowiedzialne za odczytanie konkretnej wiadomości.
Fajna sprawą i bardzo dużą zaletą jest, iż Google udostępnia taką usługę jak,grupowanie urządzeń, czyli możemy przypisać np. 20 urządzeń dla jednego użytkownika i nie musimy już przypisywać powiadomień każdemu urządzeniu osobno. Można śmiało stwierdzić. że Google dba o swoich klientów i stara się na bieżąco rozwijać.