Ich arbeite mit dem "neuen" GCM, einem Teil von Google Play Services, der keine Jars für Android und Server verwendet. Android verwendet Google Play apk zum Registrieren, Empfangen und sogar zum Senden von Nachrichten. Auf der Serverseite müssen wir mit GCM nur kommunizieren, wenn wir einen POST für ihren Server durchführen (wenn nicht XMPP verwendet wird). Ich habe alles eingestellt: Meine Android-App registriert und wartet auf Nachrichten von GCM. Mein Server kann mit GCM kommunizieren und ich kann Nachrichten an meine Android-App senden.(Neu) GCM-Nachricht erhalten, aber wie zu parsen?
Das Problem: Ich verwende eine gemeinsame jar (Android und Server) mit POJO-Objekte, die ich in und von JSON transformieren. Da POST zu GCM von meinem Server JSON verwendet und Nachrichten in meinem Android-Gerät auch empfangen (zumindest glaube ich es), dachte ich, es würde mir das Leben leichter machen. Aber wenn ich eine Nachricht von GCM in Android erhalte, weiß ich nicht, wie ich die Nutzdaten der Nachricht bekomme und in meine Objekte transformiere. Ich kann die Informationen dort sehen, aber es ist nicht mein Objekt (es gibt einige Informationen, die GCM hineinschieben).
Meine Frage ist: Gibt es eine Möglichkeit, in Android-Ende Nutzinformationen wie ich an GCM-Server gesendet habe? Oder soll ich empfangene Daten in Android ohne JSON analysieren?
Nachricht Ich habe
{ "registration_ids" ("data" Nutzlast): [ "APA91bFdV ..."], "collapse_key": null, "delay_while_idle": false, "time_to_live ": 2419200," data ": {" type ": 10" targetVersion ": - 1," message ":" test msg“, "url": "test url"}}
Was ich bekam in Android intent.getExtras(). toString()
Bundle [{message = Test msg, collapse_key = do_not_collapse, targetVersion = -1, aus = 483833987130, Typ = 10, url = Test url}]
würde ich Ihre Hilfe zu schätzen wissen. Vielen Dank!
Wie definiert man die Modellklasse für Apple und Android in Java? –