12

Moja aplikacja na Androida wymaga prostych powiadomień push, aby otrzymywać informacje o pojawieniu się nowych danych na serwerze. Android zapewnia Google Cloud Messaging (GCM), który wydaje się pasować.Powiadomienia push na Androida: Google GCM a Amazon SNS?

Jednak urządzenia działające na niższym niż Android 4.0.4 wymagają obecności konta Google w telefonie (na Google platform stats z 10/1/2012, obecnie jest to około 75% telefonów z systemem Android). Wydaje się, że nie jest dobrym doświadczeniem, gdy prosisz użytkowników o założenie konta Google w trakcie niepowiązanej działalności aplikacji.

Czy są jakieś sugestie dotyczące bardziej uniwersalnego mechanizmu wypychania, który może być używany na platformie Android? Na przykład, jakie są zalety & przeciw Amazon SNS? Jakieś inne kandydatury?

+4

Czy rozpowszechniasz swoją aplikację przez Google Play? Jeśli tak, masz gwarancję, że Twój użytkownik ma konto Google. Dodatkowo możesz używać GCM tylko przez Google Play, a nie w żadnym innym modelu dystrybucji. – KDEx

+0

Ahh ... to pomaga. Dziękuję Ci. – gcl1

+3

@KDEx GCM działa, nawet jeśli opublikujesz plik APK we własnej witrynie (niezaufane źródła).Nie trzeba jej pobierać z Google Play, aby pracować z GCM. Google Play musi być zainstalowany ze skonfigurowanym kontem, ale to wszystko. –

Odpowiedz

3

Wysoce sugeruję interfejs API parse. Można go znaleźć tutaj: http://parse.com. Jest nie tylko uniwersalny dla urządzeń z Androidem, ale jest także platformą dla iOS, JavaScript i REST. Możesz wykonywać proste wiadomości tekstowe lub złożone wiadomości, które wysyłają ciąg JSON do wypychanego urządzenia. Nie jestem do końca pewien, jakiego zakresu potrzebujesz do swojej aplikacji (możesz potrzebować więcej kontroli po stronie serwera, chociaż Parse zapewnia teraz sposób na uruchomienie kodu również w chmurze), ale zdecydowanie sprawdź Parse.

EDIT:

Najpierw Parse było naprawdę tylko otoki wokół GCM, więc nie było naprawdę odpowiedź na to pytanie, ponieważ jest na dolnej linii, GCM z niektórych świadczonych usług, aby uzyskać działasz szybciej z serwerem wypychania.

drugie, analizować został ogłoszony jako zamknięcie, a nie będą obsługiwane po 28 stycznia 2017: Parse blog announcement

trzecie, naprawdę odpowiedzieć na to pytanie, faktycznie istnieją jakieś alternatywy do GCM i SNS, które mogą zapewnić to, czego potrzebujesz. Bez wchodzenia w szczegóły czy plusy/minusy dla każdego podejścia, oto kilka alternatyw, które pomogą Ci badania:

  • gniazda sieci
  • HTTP długo sondowania
  • W zależności od przypadku zastosowania, okresowe odpytywanie z serwer (czyli sonda raz dziennie, aby uzyskać „pasza” dla najnowszych powiadomień.
  • jakiś rodzaj implementacji protokołu MQTT
+0

Dzięki za sugestię. Sprawdzi to ... – gcl1

+0

Wygląda jednak na to, że ich powiadomienia nie działają, jeśli publikujesz w sklepie Amazon App Store. – Ricardo

+10

Cóż, funkcja Parse API jest już niedostępna. – Lockal

4

usługa ta zapewniać również ogólny interfejs dla Androida i iOS, a jest mu ch tańsze niż parse: PushApps

Nowa strona Wiki jest teraz dostępny dla PushApps - PushApps wiki

+1

im również korzystam z tej strony. +1. –

+0

Być może możesz rozwinąć sposób korzystania z usługi * PushApps *. – cpburnz

+0

PushApps to witryna, która umożliwia łatwe wysyłanie powiadomień do użytkowników aplikacji na platformach iOS lub Android. Na przykład: jeśli korzystasz z systemu Android, wystarczy podać klucz gcm api i rozpocząć wysyłanie powiadomień. wykonują całą integrację z Google i przekazują statystyki dotyczące wysłanych powiadomień. możesz sprawdzić ich wiki - wiki.pushapps.mobi –

1

Dla urządzeń Android dobre opcje są GCM, Amazon SNS Urban Sterowiec. Wypróbuj Urban Airship Do tej pory Parse był dla mnie najlepszą opcją, ale oni rezygnują z usług w 2017 roku, więc nie jest to dobra opcja.