iphone - developer - iOS Chat APNS, Sockets oder Zeitintervall



remote notification ios (2)

Ich mache eine Chat-App für das iPhone, aber ich bin mir nicht sicher, wie Konversationsnachrichten sofort kommen sollten.

Ich habe viele Google-Ergebnisse zu diesem Thema gelesen. Auch das einmal an:
- http://www.raywenderlich.com/3932/how-to-create-a-socket-based-iphone-app-and-server
- http://www.raywenderlich.com/3443/apple-push-notification-services-tutorial-part-12

APNS-Ansatz:
Eine unsichtbare Benachrichtigung wird an das iPhone gesendet, um anzuzeigen, dass eine neue Nachricht zum Lesen bereit ist. Die App wird also nach ungelesenen Nachrichten fragen. Anstatt also neue Nachrichten manuell abzufragen, lasse ich APNS dabei helfen. Aber ich bin mir nicht sicher?

Sockets Ansatz:
Herstellen einer Socketverbindung, die für die gemeinsame Nutzung von Daten geöffnet ist Wenn neue Nachrichten in db gefunden werden, werden die Daten automatisch an die App gesendet. Aber was ist mit IP-Reichweite, Firewall, Stromverbrauch, andere Dinge? wieder bin ich mir nicht sicher :(

Polling-Ansatz:
Mache ein Zeitintervall, in dem ich die Anfrage abfrage, der Stromverbrauch ist hier mein Feind.

Meine Frage:
- Welcher Ansatz ist der beste?
- Andere Vorschläge?
- Ich brauche wirklich einige Nachteile und Vorteile von Leuten mit Erfahrung zu diesem Thema.

Beispiele sind immer gut.
Vielen Dank



Answer #2

Ich denke, Ihr Hauptanliegen ist, wie Sie neue Nachrichten erhalten, während Ihre Anwendung im Hintergrund ist. Weil es nicht so ist, dass ich eine Messenger-App den ganzen Tag geöffnet habe, wenn ich Benachrichtigungen mit Apps wie WhatsApp bekomme.

Besser als TCPIP-Sockets können Sie Websockets verwenden. Da es sich um HTTP handelt, gibt es keine Firewall-Probleme, ABER das erfordert eine permanente Verbindung mit der Anwendung im Vordergrund, die den Akku entlädt.

Und da nur Musik, Ort oder Sprach-IP auf dem Hintergrund ausgeführt werden darf, können Sie nur dann abfragen, wenn die Anwendung geöffnet ist. Wenn Sie sich für diese Hintergrundaufgaben registrieren und etwas anderes tun, wird Apple Ihre App bemerken und ablehnen.

Verwenden Sie daher APNS. Das macht WhatsApp.





apple-push-notifications