Push vs Polling mit Web-Service auf dem iPhone

8

Ich verwende die ASIHttpRequest-Bibliothek, um jede Minute einen Webdienst nach Updates zu fragen. Die App empfängt eine JSON-Zeichenfolge und analysiert sie. Es funktioniert OK.

Aber ich möchte das effizienter machen. Was wäre der beste Weg, um den Server dazu zu bringen, bei jeder Aktualisierung an die App-Informationen zu senden, anstatt ständig den Web-Service abzufragen?

    
cannyboy 27.04.2011, 14:45
quelle

3 Antworten

2

Apple Push-Benachrichtigung ist keine gute Lösung

1) Sie können nur eine begrenzte Menge an Daten dazu packen 2) Es kann schwierig sein herauszufinden, ob Benutzer die App gestartet oder beendet haben. Wenn Sie weiterhin PUSH senden, selbst wenn Benutzer die App verlassen, wird am Ende viel Spam angezeigt. Wenn Sie versuchen, etwas an den Server zu senden, um darauf hinzuweisen, dass Benutzer die App geschlossen haben, sodass sie nicht mehr PUSH senden sollte, funktioniert sie möglicherweise nicht, wenn die App abstürzt.

Ich schlage vor, Sie verwenden Sockets.

Oder verwenden Sie einfach eine geplante Schleife, um jede Minute Anfragen zu stellen.

.....

Aber ich frage mich, ob Sie einfach einen PUSH ohne Alarmsignal senden können und nur ein 0-Abzeichen senden. Wenn es geöffnet wurde, kann es dem Server Feedback geben, um das Update weiter zu senden. Wenn keine Rückmeldung vorhanden ist, senden Sie Push nicht mehr.

    
honcheng 27.04.2011, 16:47
quelle
2

Apples Push-Benachrichtigungen sind möglicherweise das, wonach Sie suchen. Allerdings müssten Sie etwas auf der Website implementieren, um sie zu unterstützen, glaube ich. Ich habe sie selbst nicht benutzt (ich bin noch nicht so weit in meiner Anwendungsentwicklung), aber hier ist ein Link zur Entwicklerdokumentation dafür: Ссылка

    
Jeremy Dentel 27.04.2011 14:50
quelle
0

Apples Push-Benachrichtigung ist eine Möglichkeit. Hier finden Sie eine Anleitung zum Erstellen eines Push-Vorgangs Benachrichtigungs-Provider-Server .

    
Todd Hopkinson 27.04.2011 17:23
quelle