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