2017-06-15 1 views
-1

Je suis passé par de nombreux messages, mais je ne pouvais pas obtenir de clarté sur il existe un moyen d'obtenir des notifications push lorsque l'application est fermée.iOS - Recevoir des notifications push lorsque l'application est force-Quitter par l'utilisateur

J'ai essayé avec content_available avec (true/1) et Priority as High, j'entends le son de notification mais pas de badge de notification ou de contenu sur App. Toute idée sera appréciée.

{ to=/topics/lshekhar,          
    content_available=1,         
    collapse_key=sample, 
    delay_while_idle=true, 
    delivery_receipt_requested=true, 
    priority=10, 
    data={message={ "id" : "eARMS", 
        "submitter" : "lshekhar", 
        "topic" : "/topics/lshekhar" 
       }}, 
    time_to_live=10000, 
    notification={"sound":"default"}, 
    message_id=m-3319428685310488470, 
    badge=12} 
+0

cela arrive au premier plan ou en arrière-plan –

+0

APNS nous ne pouvons pas gérer en automatique –

+0

par exemple voir ce https://stackoverflow.com/questions/39382852/didreceiveremotenotification-not-called-ios-10/39383027#39383027 –

Répondre

1

Cela semble être question dans iOS 10. Cela se produit lorsque a nulle ou « » (chaîne vide) la clé du corps de votre charge utile.

Ceci peut facilement être reproduit avec une notification locale. Demandez à votre créateur de charge utile APNS d'ajouter une chaîne non vide au corps et la notification s'affichera avec la bannière.

"alert": { 
      "title": "Some title : ", 
      "body": "Some body text" 
} 

Ceci devrait résoudre le problème. Espérons que cela aide

EDIT:

Comme OP a demandé la façon d'accéder à la charge utile de notification lorsque l'application est cesser de fumer et l'application reçoit APNS, je mets à jour la réponse

Vous pouvez accéder à la APNS charge utile si l'application arrive à recevoir le APNS alors que son cesser d'utiliser

de AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
    if (launchOptions != nil) { 
     NSDictionary *dictionary = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; 
     if (dictionary != nil) { 
      /*it is an APNS launch 
     } 
    } 

    ... 
} 

Hope it helps

+0

Je vous remercie donc beaucoup pour votre réponse. En cliquant sur la notification, il n'ouvre pas l'application. Aussi, dans la méthode didReceiveRemoteNotification, vous modifiez le titre et enregistrez le contenu du corps dans SQL qui sera utilisé pour afficher la liste des notifications reçues. Une idée, quelle méthode elle frappe en cas d'abandon de l'application? Alors que je peux faire personnaliser le même et enregistrer dans DB? – leela

+0

Je peux obtenir le badge maintenant avec le format ci-dessous. {to =/topics/lshekhar.earms, content_available = true, collapse_key = échantillon, delay_while_idle = true, delivery_receipt_requested = true, priorité = haute, time_to_live = 10000, notification = {"sound": "default", "title ":" Tool Connect », \t \t "corps": message = { \t \t \t \t \t \t "id": "eARMS", \t \t \t \t \t \t "Déposant": "lshekhar", \t \t \t \t \t \t "topic": "/ topics/lshekhar.earms », \t \t \t \t \t \t "requestName": "RequestId - eARMS_2017-06-1515: 24: 20" }, \t \t "badge": "12"}, message_id = m-1317505031125464473} – leela

+0

@ leela: Heureux que je puisse aider :) Si l'application est arrêtée et que votre application reçoit la notification, si l'utilisateur appuie sur la notification pour ouvrir l'application, le dictionnaire des notifications de didFinishLaunch with options method de votre délégué d'application aura un dictionnaire de notification. en utilisant UIApplicationLaunchOptionsRemoteNotificationKey :) –