UILocalNotification:每 2 个月、4 个月、6 个月重复一次?
UILocalNotification: Repeat every 2 months, 4 months, 6 months?
我想以 2 个月、4 个月和 6 个月的间隔安排本地通知。
根据可用的 NSCalendarUnits,我看不出这是怎么可能的。
有什么建议吗?
我已经使用以下 hack 实现了这种功能。
- (void)application:(UIApplication *)application didReceiveLocalNotification
(UILocalNotification *)notification
{
if ([notification.alertBody isEqualToString:@"your notification's alertBody"])
{
//reschedule your notification for 2 months
}
}
只需在您的应用程序的委托中使用上述方法appdelegate.m
很遗憾,这是不可能的。 NSCalendarUnit
仅适用于单元重复。
考虑到您不能安排超过 64 个本地通知,您有 3 种可能性。
- 如果您知道永远不会超过该限制,请安排所有需要的通知
- 制定一个只安排一定数量通知的算法,当用户进入您的应用程序时删除旧通知并重新安排更多通知。为此,使用 ID 标识每个通知并将其附加到信息字典。
- 创建一个注册用户选项的 Web 服务,并在需要时使用服务器推送通知(推送通知)
我想以 2 个月、4 个月和 6 个月的间隔安排本地通知。
根据可用的 NSCalendarUnits,我看不出这是怎么可能的。
有什么建议吗?
我已经使用以下 hack 实现了这种功能。
- (void)application:(UIApplication *)application didReceiveLocalNotification
(UILocalNotification *)notification
{
if ([notification.alertBody isEqualToString:@"your notification's alertBody"])
{
//reschedule your notification for 2 months
}
}
只需在您的应用程序的委托中使用上述方法appdelegate.m
很遗憾,这是不可能的。 NSCalendarUnit
仅适用于单元重复。
考虑到您不能安排超过 64 个本地通知,您有 3 种可能性。
- 如果您知道永远不会超过该限制,请安排所有需要的通知
- 制定一个只安排一定数量通知的算法,当用户进入您的应用程序时删除旧通知并重新安排更多通知。为此,使用 ID 标识每个通知并将其附加到信息字典。
- 创建一个注册用户选项的 Web 服务,并在需要时使用服务器推送通知(推送通知)