2014-12-12 6 views
8

Wenn eine Push-Benachrichtigung empfangen wird und meine Anwendung vollständig geschlossen ist, wie kann diese Information verarbeitet werden?Daten von Push-Benachrichtigungen erhalten, wenn App in iOS geschlossen ist und App nicht im Hintergrund läuft

Nur können Daten aus NSDictionary auf dieser Methode erhalten didFinishLaunchingWithOptions: oder

didReceiveRemoteNotification:

zum Beispiel: , wenn der Benutzer die Anwendung öffnen, wie Daten aus der Push-Benachrichtigung erhalten ?, und nicht wenn der Benutzer die Push-Benachrichtigung direkt öffnet.

Gibt es eine Methode, die reagiert und erkennt, ob eine Benachrichtigung nicht gelesen wurde?

Antwort

15

Sie werden

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))handler 

implementieren möchten wird dies Ihre App starten, wenn nötig, dann werden Sie die Daten irgendwo so speichern möchten, wenn der Benutzer beginnt als nächstes die App die Daten zu packen und etwas tun damit.

From Apples Doc's:

Diskussion

Mit dieser Methode können eingehende Remote-Benachrichtigungen für Ihre Anwendung zu verarbeiten. Im Gegensatz zur Anwendung: didReceiveRemoteNotification: method, die nur aufgerufen wird, wenn Ihre App im Vordergrund ausgeführt wird, ruft das System diese Methode auf, wenn Ihre App im Vordergrund oder Hintergrund ausgeführt wird. Wenn Sie den Remote-Benachrichtigungsmodus im Hintergrundmodus aktiviert haben, startet das System Ihre App (oder weckt sie aus dem gesperrten Status ) und versetzt sie in den Hintergrundstatus, wenn eine Push-Nachricht eintrifft. Jedoch startet das System nicht automatisch Ihre App, wenn der Benutzer es erzwungen hat. In diesem Fall muss der Benutzer Ihre App neu starten oder das Gerät neu starten, bevor das System versucht, Ihre App automatisch erneut zu starten.

Schauen Sie einfach in die Methode und ich bin sicher, Sie werden es herausfinden :)

ich eine schnelle Google tat, diese schauen, wie sie helfen:

SO Beispiel: didReceiveRemoteNotification: fetchCompletionHandler: open from icon vs push notification

Das erste Tutorial ich sah es: http://hayageek.com/ios-background-fetch/

+2

Ich habe eine kurze Frage. Wenn ich die App über den Multitask-Bildschirm schließe, kann ich trotzdem eine Benachrichtigung erhalten? Denn an meinem Ende scheint es, als könnte ich keine Benachrichtigung erhalten, wenn ich die App schließe. – Rhenz

+1

@BooRanger Vielen Dank für Ihre Antwort !!!!! Ich liebe dich (nicht geeignet) – hyd00

+1

@BooRanger danke, viel verbrachte ich laaaaaaaaang Zeit auf der Suche nach diesem – Shehabix

Verwandte Themen