Push-Dienst Implementieren

  • Hey - danke aber diese C2DM ist wie ich es sehe nur in Verbindung mit Android.
    Ich würde gerne Art Chat (Basis schon fertig fehlt nur Push-Funktion) mit Push Funktion machen welches sowohl für Android wie IOS etc. funktionieren sollte.


    Irgendwelche Ideen?

  • Genau, dass habe ich vor.
    Daher muss ich es wohl allg. fassen, sodass es auf Android sowie IOS funktioniert.


    Theorie:
    ClientApp --> Passive Verbindung zum Server (wartend auf input)
    Server --> Falls input kommt Aktive Verbindung zum Client aufbauen und Daten übertragen


    So sollte Push generell funktionieren? (Ob nun Android oder IOS die Umsetzung ist doch bei beiden Theoretisch möglich?)

  • Hallo CPro,


    damit Push funktioniert bist du, sobald ein Android Gerät push erhalten soll, auf C2DM angewiesen. Von welchem Gerät du die Push Nachricht dann schickst, ob das ein Iphone oder ein Android Gerät ist im Grunde egal. Wenn du die Nachricht vom Android schickst, rufst du in deinem Code einfach einen http-post auf, der als Inhalt deine Nachricht hat. Dein Server verschickt die Nachricht dann an den Empfänger. Wenn das ein Iphone ist, dann ist es kein Problem. Ist es aber ein Android Gerät dann kommt jetzt C2DM ins Spiel.



    Hier findest du sehr viele Informationen und ein gutes Diagramm wie C2DM funktioniert.



    Und hier ein Video Tutorial für C2DM


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.



    Gruß

  • Hi CPro,


    falls ich dich richtig verstehe möchtest du deine Chatnachrichten per Push verschicken.
    Theoretisch ist das möglich praktisch würde ich dir von diesem weg abraten.


    Und zwar aus zwei Gründen:


    1.) nachrichten dürfen nur eine bestimmte Größe haben: Android 1.024 Byte und Apple 256 Byte (das ist nicht wirklich viel)
    2.) Kein Hersteller gibt die eine Garantie das die Nachricht auch zugestellt wird(außer vielleicht RIM/Blackberry)


    mfg Titus

  • Also bin ich auf das C2DM 100%ig angewiesen, wenn ich Push mit Android betreiben möchte?
    Und die Anzahl der Nachrichten via C2DM scheint ja limitiert und das will ich ja eben nicht, wäre ja blöd, wenn jeder Client nur 10x am Tag einen Push bekommen könnte.


    PS: Mit den Android 1.024 Byte und Apple 256 Byte ist vollkommen ausreichend, ich möchte ja nicht die komplette Nachricht sondern einfach nur einen hinweis schicken, dass eine neue Nachricht gekommen ist.

  • Hi CPro,


    Zitat

    "Also bin ich auf das C2DM 100%ig angewiesen, wenn ich Push mit Android betreiben möchte?"


    Ja es gibt keinen anderen weg.


    mmhh hab mal google das normale Limit soll wohl bei 200.000 liegen. keine Ahnung ob dir das reicht.


    Zitat

    Mit den Android 1.024 Byte und Apple 256 Byte ist vollkommen ausreichend, ich möchte ja nicht die komplette Nachricht sondern einfach nur einen hinweis schicken, dass eine neue Nachricht gekommen ist.


    Ah ok dann hab ich wohl was falsch verstanden.


    mfg Titus

  • Hi,


    ich wühl mich auch grad durch C2DM. Hier mal die Tutorials auf die ich so gestoßen bin:


    Push Nachrichten mit Googles C2DM
    Android Cloud To Device Messaging
    Push Notification in Android Apps via C2DM
    und natürlich die offizielle Doku
    Android Cloud To Device Messaging Framework



    So wie ich dich verstehe willst du via POST die Nachricht zu deinem Server schicken. Der Pusht dann ein "Sie haben eine neue Nachricht" zum Device des Empfängers. Der Empfänger drückt drauf die App öffnet sich und du pollst dir die gesamte Message von deinem Server, richtig? Sowas ist gang und gebe was ich bisher so mitbekommen hab darüber. Sowas die Richtung bastel ich auch grad ;)



    Gruß,
    matze

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!