GCM implementieren

  • Antworten:67
  • Bentwortet
Andy N.
  • Forum-Beiträge: 3.112

15.07.2014, 19:37:03 via App

Jakob N.

Gibt es eigentlich von Google ein Tool wo man gesendete Push-Notifications anschauen kann oder so ähnlich?

LG Jakob

In den Beispielen von gwt ist ein kleines Backendtool dabei, mit den du das machen kannst.
Das musst du aber dann alles selber mit gwt umsetzen und ist wahrscheinlich zu viel es guten.
Du könntest die Nachrichten aber auch einfach in eine DB schreiben.

Antworten
Jakob N.
  • Forum-Beiträge: 282

15.07.2014, 19:55:37 via Website

@Andy: Ich glaub ich lass das lieber, ist nicht wirklich wichtig ;)

@Pascal: Welchen Manager hast du genau gemeint?

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

15.07.2014, 19:59:59 via Website

Ich meinte den Notification Manager.
Du kannst mit diesem Prüfen ob in der Statusleise der Device schon eine Notification mit der ID vorhanden ist.
Wenn nein die gleiche ID benutzen.
Wenn ja: Id++ und dann noch mal Prüfen.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

15.07.2014, 20:26:06 via Website

Das geht nur mit dem NotificationListenerService oder?

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

15.07.2014, 21:18:09 via App

Ne geht auch anders.
Ich weiss es grad nur nicht auswendig.
Kann es dir erst morgen abend oder so sagen wenn ich nachschauen kann.

— geändert am 15.07.2014, 21:18:36

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

15.07.2014, 21:34:16 via Website

Oke wär lieb! bitte danke :)

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

16.07.2014, 17:19:03 via Website

Hallo,
also ich hatte das Falsch in Erinnerung:
Wenn du den Vorschlag von mit oben genannt verwenden willst, dann benötigst du entweder den NotificationListenerService oder die SharedPreferences zum speichern der gesetzten Integer.

Ich habe gemerkt, das ich es anders mache:

Meine GCM Messages haben einen Typ (z.b News, DataUpdate etc.).
Diese Typen sind in einer Enumeration gespeichert.
Jetzt weiß ich, welchen Typ die Message hat, da die Enumerations eh eine interne integer ID haben, benutze ich einfach diese.
Das bedeutet aber auch: Ich kann nur eine Notification pro Typ erstellen. Mir reicht das, weil ich nicht für jeden GCM Message Typ eine Notification erstellen muss.
Aber bei dir wird es Problematisch, denn wie ich dich verstanden habe, willst du alle Typen anzeigen und egal wieviele Messages.
D.h. du musst es mit den SharedPrefs (speichern des aktuellen Notification Indexes) oder per NotificationListenerService.

Fazit:
Du musst dich entscheiden, welcher Weg für dich am Besten/Effizientesten ist.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

16.07.2014, 22:33:32 via App

API Level 18 bedeutet, dass das es nur auf Geräten mit Android 4.3 funktioniert oder dass die buildVersion 4.3 sein muss?

Werde jedoch trotzdem einfach die SharedPreferences verwenden.

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

17.07.2014, 06:56:02 via App

Wenn der Sevice api 18 required schon sonst ist das einfach nur eine api empfehlung.
Ich glaube das mit den shared preferences ist auch einfacher.
Die zahl dürfte halt ein limt nicht überschreiten, also irgendwie die zahlenrange einschränken und dann wieder auf 0 setzen. Sonst hast du irgendwann eine Zahl 10^5 oder so.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

17.07.2014, 22:19:42 via App

Kann man beim Tippen einer Notificaton ein Fragment starten?

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

18.07.2014, 07:19:09 via App

Ah ne nur eine Activity die das fragment enthält.
Auswahl des Fragments könntest du über intent extras variable machen.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

18.07.2014, 07:20:41 via App

Hab ich mir fast gedacht ;)

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

18.07.2014, 07:21:43 via App

Fragments so öffnen geht ja nicht ohne laufende Anzeige Activity

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

18.07.2014, 07:24:44 via App

Ja hab nur gedacht vl kann man dem Intent gleich sagen dass et die Activity mit dem Fragment laden soll

LG Jakob

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

18.07.2014, 09:53:45 via Website

Ja das kannst du, aber dafür muss deine Fragment Activity wissen, was du mit der ID aussagen willst.
Also erst das Intent auwerten und dann das entsprechende Fragment laden.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

11.09.2014, 22:09:24 via Website

Hallo!

Leider musste ich gerade feststellen, dass ich keine GCM-Nachrichten erhalte.

Kann es daran liegen, dass ich nicht die neueste google-play-services eingebunden habe? Muss man immer die neueste Version haben? Oder sind irgendwelche Services gerade down?

LG Jakob

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

11.09.2014, 22:19:37 via App

Hat es denn schonmal Funktioniert?
Bedenke dass GCM nicht auf Emulatoren funktioniert.
Zudem könnte sich der GCM service ahf deinem Handy aufgehängt haben dann mal das Gerät neustarten. (oder auf 2. Gerät testen)
Kann aber auch an einer Firewall liegen, die irgendeinen Port (glaube 5300) oder so sperrt. Dann tuts auch nicht.

Falls es dann nicht geht lade die die App Gcm test ahs dem PlayStore. Falls diese auch nicht tut gibts ein Problem mit dem GCM Google Server oder dem Service auf deinem Phone.

Wenn dieser Test funktioniert liegt es an deiner App.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Jakob N.
  • Forum-Beiträge: 282

12.09.2014, 13:57:19 via App

Danke für deine Hilfe!
Habe es schon gelöst :) Die Libary war nicht richtig eingebunden.

LG Jakob

Antworten