2016-04-01 6 views
1

Die iOS-App, die ich entwickle, verwendet ein Cloud-Backend (Kinvey, um genau zu sein), und ich weiß nicht, wie das Problem des Abhörens auf bestimmte Änderungen im Backend zu nähern Das sollte Updates für die Benutzeroberfläche signalisieren. Es ist ein Multiplayer-Spiel, das ich mache. Wenn zum Beispiel jemand einem Match beitritt, möchte ich, dass alle anderen Spieler in diesem Match wissen, dass ein neuer Spieler beigetreten ist, und so weiter.Allgemeine Theorie für iOS cloud-backend Ereignishören

Wenn Sie mir die allgemeine Theorie anbieten könnten, wie man sich dieser Art von Aufgabe nähert, sowie einige Hinweise, wie man beginnt, die richtigen Funktionen (globale Funktionen?) Zu programmieren, würde ich es sehr schätzen. Ich benutze übrigens swift.

+0

Wenn Sie mit CloudKit als Sie Abonnements verwenden konnten, unsicher, ob Kinvey dies bereitstellen, obwohl ich vermute, dass sie tun. – user3069232

Antwort

0

Apple Push-Benachrichtigungen sind ein guter Mechanismus dafür. Push-Benachrichtigungen werden vom Kinvey-Backend initiiert, basierend auf bestimmten Triggern, die Sie in Ihrer Business-Logik-Ebene codieren können. Z.B. "Einem Spiel beitreten" wird wahrscheinlich eine Art von Update für eine Kinvey-Sammlung auslösen. Sie können dann einen BL-Hook hinzufügen, der die Push-Benachrichtigung sendet. Die Benachrichtigungen werden programmgesteuert in der App bereitgestellt, und Sie können sie dann von einem AppDelegate-Handler aus behandeln.

Beispiel Geschäftslogik, die in ein Update hakt/speichert Anfrage, um andere Benutzer zu benachrichtigen (sehr ähnlich zu Ihrem Anwendungsfall): http://devcenter.kinvey.com/ios/guides/business-logic#Triggeringpushnotifications

Überblick darüber, wie Push im Backend einrichten und in Ihrem App:

+0

Wenn ich an Push-Benachrichtigungen denke, denke ich an die Popup-Benachrichtigungen, die einige Apps Ihnen geben, aber ich kann diese Technologie verwenden, um eine beliebige Anzahl von UI-Änderungen wie das Ändern eines Bildes oder das Erstellen eines Segments zu initiieren? – user3915477

+0

Ja, Sie können, indem Sie Silent Push verwenden, der nur den Handler aufruft und keine Warnung ausgibt. Stellen Sie "content-available: 1" ein und stellen Sie die korrekten Hintergrundmodi in developer.apple.com ein. Siehe http://devcenter.kinvey.com/ios/reference/business-logic/reference.html#Payloads –

+0

Gemäß den App Store Review Guidelines werden "Apps, die Push-Benachrichtigungen benötigen, um zu funktionieren, abgelehnt", also ich nicht Ich denke, das wird funktionieren. – user3915477