Значки push-уведомлений не отображаются?

#iphone #cocoa-touch #push-notification

#iPhone #cocoa-touch #push-уведомление

Вопрос:

Я использую Urban Airship для отправки push-уведомлений в свое приложение

например:

 {"aps": {"badge": 2, "alert": "Part 2 of the August Issue is ready to download!", "sound": "default"}, "device_tokens": ["X"]}
  

Оповещение будет отображаться отлично, однако значок приложения никогда не отображается, независимо от того, что я установил для «значка»: #…

Моя полезная нагрузка неверна или есть дополнительный код, который я должен добавить в свое приложение для обработки значков и оповещений? Спасибо!

РЕДАКТИРОВАТЬ: я регистрируюсь для получения push-уведомлений следующим образом:

 // Register for notifications
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeNewsstandContentAvailability | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeAlert)];
  

Ответ №1:

Я столкнулся с аналогичной проблемой. После нескольких минут проверки. Я заметил, что возникла проблема с моим кодом на стороне сервера. Я обнаружил, что значение значка должно быть неявно задано как целое число, чтобы получить желаемый результат. Надеюсь, это поможет любому, кто читает это.

Комментарии:

1. Я предполагаю, что это означает, что оно должно быть передано как 4 вместо «4».

2. Потрясающая находка! Спасибо.

3. @Joqn Да, это правильно. Это должно быть передано как 4, а не «4».

Ответ №2:

установите следующий код в файле appdelegate .m..

 -(void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo
{


    NSLog(@"Received notification: %@", userInfo);
    //[self addMessageFromRemoteNotification:userInfo];

    NSString* alertValue = [[userInfo valueForKey:@"aps"] valueForKey:@"badge"];
    NSLog(@"my message-- %@",alertValue);
    int badgeValue= [alertValue intValue];

    [[UIApplication sharedApplication] setApplicationIconBadgeNumber:badgeValue];

}
  

Ответ №3:

В iOS 5 есть Настройки -> Уведомления. Дважды проверьте, включен ли значок приложения для значков.

Я предполагаю, что приложение не было на переднем плане, когда вы тестировали? Если он находится на переднем плане, тогда вам придется обрабатывать значки вручную.

Комментарии:

1. Значки включены в настройках моего приложения, также значки не отображаются независимо от переднего плана, фона или нового запуска…