本地通知“didReceiveLocalNotification"打了两次电话 [英] local notification "didReceiveLocalNotification" calls twice

查看:19
本文介绍了本地通知“didReceiveLocalNotification"打了两次电话的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用以下方法处理本地通知:

I am handling local notifications using:

- (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification *)notif

并安排本地通知:

- (void)scheduleNotificationWithInterval:(int)minutesBefore {
    UILocalNotification *localNotif = [[UILocalNotification alloc] init];

    if (localNotif == nil)
        return;

    NSDate *fireDate = [NSDate date];
    localNotif.fireDate = [fireDate dateByAddingTimeInterval:minutesBefore*60];
    localNotif.timeZone = [NSTimeZone defaultTimeZone];
    localNotif.repeatInterval = kCFCalendarUnitMinute;
    localNotif.alertBody = [NSString stringWithFormat:NSLocalizedString(@"LocalEvent notification in %i minutes.", nil),minutesBefore];
    localNotif.alertAction = NSLocalizedString(@"View Details", nil);
    localNotif.applicationIconBadgeNumber = 1;

    NSDictionary *infoDict = [NSDictionary dictionaryWithObjectsAndKeys:@"This is dict, you can pass info for your notification",@"info",nil];
    localNotif.userInfo = infoDict;

    [[UIApplication sharedApplication] scheduleLocalNotification:localNotif];

    [localNotif release];
    NSLog(@"Event scheduled");
}

当我收到通知时,didReceiveLocalNotification: 被调用两次.

When I receive a notification, didReceiveLocalNotification: is called twice.

我做错了吗?

请帮忙.

谢谢.

推荐答案

我认为模拟器中存在一个已知错误,它两次触发委托通知方法.它不应该发生在设备上,无论是否与 XCode 相关联.

I think there is a known bug in the simulator, that fires the delegate notification method twice. It should not happen on the device, tethered to XCode or not.

这篇关于本地通知“didReceiveLocalNotification"打了两次电话的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆