Push-уведомление Titanium показывает всю полезную нагрузку вместо фактического сообщения

Я использую cURL для отправки push-уведомлений в appcelerator, использую это некоторое время без проблем.

Внезапно appcelerator не может обработать полезную нагрузку JSON и показывает всю строку JSON в виде сообщения на реальном устройстве. Вот как выглядят наши данные для curl:

channel=dev&payload={"alert":"The Message","title":"Title","vibrate":true, content-available:1, "badge":"+1", "sound":"default", "id":617, "icon":"appicon"}&to_ids=everyone

И это то, что мое устройство показывает как push-уведомление:

"{
   "alert":"The Message",
   "title":"Title",
   "vibrate":true, 
    content-available:1, 
   "badge":"+1", 
   "sound":"default", 
   "id":617, 
   "icon":"appicon"
 }"

вместо: "Сообщение"

2 ответа

Решение

Оказывается, в JSON был \ n, который разбил строку JSON. сначала построив массив, затем с помощью json_encode() в PHP исправил проблему

Вам нужно будет проанализировать JSON, который входит в ваше приложение. Полезная нагрузка - JSON.

Итак, предполагая, что полезная нагрузка входит с переменной data, вам нужно сделать это:

alert(JSON.parse(data).alert);

Это отобразит свойство alert полезной нагрузки.

Другие вопросы по тегам