Format personnalisé de notification push iOS

Je suis nouveau à tous les domaines de notification push iOS. J'ai essayé une notification push de base en utilisant le code suivant et cela fonctionne parfaitement. J'utilise "using JdSoft.Apple.Apns.Notifications;" pour y parvenir. Voici le code:

Notification alertNotification = new Notification(testDeviceToken); alertNotification.Payload.Alert.Body = "Hello World"; alertNotification.Payload.Sound = "default"; alertNotification.Payload.Badge = 1; 

Cela donne la sortie à l'iPhone dans la structure suivante:

 { aps = { alert = "Hello World"; badge = 1; sound = default; }; } 

J'ai maintenant l'obligation d'append une label personnalisée comme suit:

 {  "aps":   {    "alert": "Hello World",    "sound": "default", "Person":     {      "Address": "this is a test address",      "Name": "First Name",      "Number": "023232323233"   } } } 

Je trouve difficile d'get "Person" à l'intérieur de "Aps". Je sais également que vous pouvez append un atsortingbut personnalisé en utilisant le code suivant:

alertNotification.Payload.AddCustom ("Personne", Newtonsoft.Json.JsonConvert.SerializeObject (stat));

Mais le code ci-dessus n'ajoute pas de balise "aps". S'il vous plaît dites-moi comment cela peut être réalisé?

Vous n'êtes pas autorisé à mettre des balises personnalisées dans la balise aps . Voici ce que les documentations en disent:

Les fournisseurs peuvent spécifier des valeurs de charge utile personnalisées en dehors de l'espace de noms Apple aps réservé. Les valeurs personnalisées doivent utiliser les types structurés et primitifs JSON: dictionary (object), tableau, string, nombre et Booléen.

Donc, dans votre cas, vous devriez faire quelque chose comme:

 { "aps": { "alert": "Hello World", "sound": "default" }, "Person": { "Address": "this is a test address", "Name": "First Name", "Number": "023232323233" } } 

Par conséquent, vous pouvez lire votre charge utile personnalisée en recherchant sa key dans JSON principal, plutôt que dans "aps":

 NSLog(@"%@",notification['Person']['Address']); 

Ci-dessus va produire:

ceci est une adresse de test

Vous pouvez en savoir plus sur les charges utiles personnalisées, ainsi que quelques exemples dans les documents Apple .

Cordialement, HrisTo