如何获取特定的通知计数
How to get particular notification count number
我有三类 UILocalNotification
- 每个星期日、星期一和星期六通知。
如何获取特定通知,即周一触发计数。
我有一个通知 UILocalNotification
(不是远程或推送通知)。
如何统计两个月内触发的周一通知?
注意:没有推送或远程通知的范围。
您必须手动管理它,我建议的方法是利用 AppDelegate 的 didReceiveLocalNotification
方法。执行此操作,然后检查 UILocalNotificationObject
的 fireDate
属性。您可以使用以下代码将其解析为星期几:
int dayOfWeek = [[NSCalendar currentCalendar] component:NSCalendarUnitWeekday fromDate:notification.fireDate];
然后您可以根据您拥有的数量将此值存储在 NSUserDefaults
中。 1 是星期一,2 是星期二,依此类推...
long dayOfWeek = [[NSCalendar currentCalendar] component:NSCalendarUnitWeekday fromDate:notification.fireDate];
long currentCount = [[NSUserDefaults standardUserDefaults] integerForKey:[NSString stringWithFormat:@"weekdayNotificationCount_%ld", dayOfWeek]];
[[NSUserDefaults standardUserDefaults] setInteger:currentCount + 1 forKey:[NSString stringWithFormat:@"weekdayNotificationCount_%ld", dayOfWeek]];
这样一来,您的 NSUserDefaults
中将始终存储 运行 总数,并且只有删除该应用程序后才会消失。
我有三类 UILocalNotification
- 每个星期日、星期一和星期六通知。
如何获取特定通知,即周一触发计数。
我有一个通知 UILocalNotification
(不是远程或推送通知)。
如何统计两个月内触发的周一通知?
注意:没有推送或远程通知的范围。
您必须手动管理它,我建议的方法是利用 AppDelegate 的 didReceiveLocalNotification
方法。执行此操作,然后检查 UILocalNotificationObject
的 fireDate
属性。您可以使用以下代码将其解析为星期几:
int dayOfWeek = [[NSCalendar currentCalendar] component:NSCalendarUnitWeekday fromDate:notification.fireDate];
然后您可以根据您拥有的数量将此值存储在 NSUserDefaults
中。 1 是星期一,2 是星期二,依此类推...
long dayOfWeek = [[NSCalendar currentCalendar] component:NSCalendarUnitWeekday fromDate:notification.fireDate];
long currentCount = [[NSUserDefaults standardUserDefaults] integerForKey:[NSString stringWithFormat:@"weekdayNotificationCount_%ld", dayOfWeek]];
[[NSUserDefaults standardUserDefaults] setInteger:currentCount + 1 forKey:[NSString stringWithFormat:@"weekdayNotificationCount_%ld", dayOfWeek]];
这样一来,您的 NSUserDefaults
中将始终存储 运行 总数,并且只有删除该应用程序后才会消失。