2014-01-20 1 views
9

Ich habe stille Push-Benachrichtigung implementiert. Es funktioniert nicht, wenn ich App manuell getötet habe. Nachdem ich eine Push-Benachrichtigung erhalten habe, habe ich eine Funktion aufgerufen, die Daten an den Server sendet.iOS Silent Push-Benachrichtigung funktioniert nicht, wenn ich app manuell

Hier ist mein Code für Silent Push-Benachrichtigungen

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


NSLog(@"didReceiveRemoteNotification fetchCompletionHandler..........."); 
[MyviewController SendDataFunction]; 

handler(UIBackgroundFetchResultNewData); 
} 

Bitte leite mich.

Update: -Die App kann nicht über eine stille Benachrichtigung oder über den Hintergrund-Abruf gestartet werden, wenn der Nutzer die App im App-Switcher manuell beendet hat. Um eine Benachrichtigung zu erhalten, muss der Nutzer die App erneut starten. Und nach wie vor, wenn braucht jemand App aktivieren dann PushKit + VOIP sollte für diese App wie WhatsApp aktiviert werden, siehe den folgenden Link https://zeropush.com/guide/guide-to-pushkit-and-voip

+0

Siehe Antwort in der obigen Frage, möglicherweise seinen Fehler, wenn Benutzer manuell App tötet. –

+0

@nikBhosale hast du irgendwelche Updates für diese Frage bekommen? – Urmi

+0

@urmi, das System startet Ihre App nicht automatisch, wenn der Benutzer das Programm beendet hat. Bitte lies das Update gepostet. Vielen Dank. – nikBhosale

Antwort

0

didReceiveRemoteNotification nur App aufgerufen wird, wenn ausgeführt und App im Hintergrund Zustand, es ist nicht genannt App nicht laufender Zustand, wenn Sie Benachrichtigungen wie diese erhalten

+0

in [iOS7] (https://developer.apple.com/library/ios/documentation/uikit/reference/UIApplicationDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UIApplicationDelegate/application:didReceiveRemoteNotification:fetchCompletionHandler:) Im Hintergrund wurde die Push-Benachrichtigung hinzugefügt. Was sagt 'Wenn Ihre App gesperrt ist oder nicht ausgeführt wird, wacht das System auf oder startet Ihre App und versetzt sie in den Hintergrund, bevor sie die Methode aufruft. ' –

+0

Vielen Dank für Ihre Antwort. Ich werde es versuchen und Sie wissen lassen, ob es funktioniert oder nicht. – nikBhosale

+0

@NANNAV .. Ich habe das versucht, aber es funktioniert immer noch nicht für mich. – nikBhosale