我正在使用Parse和PFInstallation根据来自Parse的通知来增加我的应用的徽章计数。我还需要能够减少该数字-不仅仅是重置它;我正在寻找与iOS Messages或Mail应用程序徽章相同的行为。每次阅读邮件或消息时,应用程序的徽章都会按您查看过的项目数减少。
如何使用Parse和PFInstallation在我的iOS应用中实现此目标? PFInstallation具有递增的概念,但是递减呢?
最佳答案
不幸的是,您不能像Decrement
那样使用Increment
。但是,您可以通过两种不同的方式将徽章编号设置为特定值。
更新安装
PFInstallation *currentInstallation = [PFInstallation currentInstallation];
if (currentInstallation.badge != 0) {
currentInstallation.badge -= 1;
[currentInstallation saveEventually];
}
通过推送更新
在创建推送之前,请查看数据库中当前的徽章编号,并发送值-1。
NSDictionary *data = @{
@"alert" : @"Your message",
@"badge" : @<Decremented Value>,
};
PFPush *push = [[PFPush alloc] init];
[push setChannels:@[ @"Your Channel" ]];
[push setData:data];
[push sendPushInBackground];