didReceiveRemoteNotification и номер значка - PullRequest
0 голосов
/ 20 января 2011

Хорошо, я немного застрял на том, как с этим работать.

Сначала я покажу вам код.

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
    NSString *badge = [apsInfo objectForKey:@"badge"];
    NSLog(@"Received Push Badge: %@", badge);
    application.applicationIconBadgeNumber = [[apsInfo objectForKey:@"badge"] integerValue];
}

Извините за обилие беспорядка, кнопка Код не работала.

Теперь мой push-шлюз каждый раз указывает число отправляемых оповещений и т. Д., Но если есть предыдущие оповещения, как мне получить этот код, чтобы просто добавить +1 в список вместо просто установки?новый номер

Ответы [ 2 ]

1 голос
/ 23 ноября 2012

APNS не поддерживает операции приращения для значков;каждое сгенерированное push-уведомление должно указывать текущее значение.(Главным образом из-за того, что push-уведомления не гарантируются для получения устройством)

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

1 голос
/ 22 октября 2012

Вы должны попробовать это:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
    NSString *badge = [apsInfo objectForKey:@"badge"];
    NSLog(@"Received Push Badge: %@", badge);
    int currentBadgeNumber = application.applicationIconBadgeNumber;
    currentBadgeNumber += [[apsInfo objectForKey:@"badge"] integerValue];
    application.applicationIconBadgeNumber = currentBadgeNumber;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...