Номер значка постоянно увеличивается, даже после того, как я использую метод setBadgeNumber(0)

Я использую Distriqt PushNotifications ANE и PARSE для отправки PushNotifications, и пока все работает ОТЛИЧНО.

Это означает, что я регистрирую свои устройства iOS и получаю Push-уведомления, как и должно быть....

Когда я отправляю Push-уведомления с помощью PARSE, я использую значение badge:"Increment", которое по понятным причинам увеличивает значение на +1.

После того, как я открою приложение, я хочу сбросить BADGE на 0, и я использую метод setBadgeNumber(0)... Это также работает, я пробовал с другими значениями, такими как 11 или 1, и он отображает это правильно.

Проблема в том, что когда я отправляю другое уведомление PARSE, оно отображает теперь старое значение + 1 !!!

Вот так:

  • Я использую PARSE для отправки 3 PushNotifications
  • На значке отображается (3)
  • Я использую setBadgeNumber(0)
  • На значке отображается (0)
  • Я использую PARSE для отправки 2 дополнительных PushNotifications
  • На значке отображается (5)!!!!

Как я могу действительно сбросить значок?


person GV3    schedule 18.09.2015    source источник


Ответы (1)


Значение значка фактически отправляется как часть полезной нагрузки push-уведомления, например:

{
    "aps" : {
        "alert" : "Notification content",
        "badge" : 5
    }
}

Вы должны дважды проверить, что на самом деле отправляет Parse, поскольку он будет вести подсчет уведомлений и отправлять их как часть полезной нагрузки, поэтому вам нужно будет либо отключить это в Parse, либо уведомить Parse о том, что ваш пользователь сбрасывает/меняет счетчик.

Вызов setBadgeNumber просто меняет значок в приложении и не обновляет Parse этого изменения.

Вы можете заглянуть в Parse ANE, который помогает в этом процессе:

http://airnativeextensions.com/extension/com.distriqt.Parse

person Michael    schedule 20.09.2015