3

我正在使用具有 QuickBlox 后端的 Corona SDK 构建应用程序。我有一个最后的技术挑战 - 每次收到推送通知时,如何让徽章计数器增加?我正在使用 REST API 发送消息。

4

2 回答 2

1

要在推送通知中管理徽章计数器,您应该发送带有适当徽章值的推送通知。每次您收到新的推送消息时,iOS 设备都不会自动增加它

要从带有特定徽章计数器的 iOS 设备发送推送,您应该使用以下代码:

NSMutableDictionary *payload = [NSMutableDictionary dictionary];
NSMutableDictionary *aps = [NSMutableDictionary dictionary];
[aps setObject:@"default" forKey:QBMPushMessageSoundKey];
[aps setObject:@"This is Push Notification, baby!" forKey:QBMPushMessageAlertKey];
[aps setObject:@"5" forKey:QBMPushMessageBadgeKey];
[payload setObject:aps forKey:QBMPushMessageApsKey];

QBMPushMessage *message = [[QBMPushMessage alloc] initWithPayload:payload];

// Send push
[QBMessages TSendPush:message toUsers:@"218650" delegate:self];

您将收到带有徽章值 = 5 的推送消息

您还可以从管理面板发送推送并管理徽章值以及 https://www.evernote.com/shard/s216/sh/7e53a5e3-c24b-4ae9-b4c4-855dd4f41370/b404dcb788992fb1a8dabe1bf0fbcc0f

于 2013-09-05T14:17:48.843 回答
1

如果应用程序在后台运行,则将 QBMPushMessageBadgeKey 作为字符串参数(至少对于 iOS7)发送不会更新图标徽章。

您应该将其作为 NSNUmber 发送,它会很好地工作,应用程序在后台或前台运行:

[aps setObject:@5 forKey:QBMPushMessageBadgeKey];
于 2013-11-19T11:12:12.467 回答