3

我正在尝试安排一个本地通知,一旦通知被触发,它将在每 1 秒后重复一次。应用程序启动后 10 秒触发通知。

UILocalNotification *notif = [[cls alloc] init];

    notif.fireDate = [[NSDate alloc]initWithTimeInterval:10 sinceDate:[NSDate date]];
    notif.timeZone = [NSTimeZone defaultTimeZone];
    notif.alertBody = @"Did you forget something?";
    notif.alertAction = @"Show me";
    //notif.soundName = UILocalNotificationDefaultSoundName;
    notif.soundName = @"applause-light-01.wav";
    notif.applicationIconBadgeNumber = 1;
    notif.repeatInterval = NSSecondCalendarUnit;
    [[UIApplication sharedApplication] scheduleLocalNotification:notif];

即使我已经使用过notif.repeatInterval = NSSecondCalendarUnit,通知会在 60 秒后重复。我做错了什么?

4

1 回答 1

1
notif.fireDate = [[NSDate alloc]initWithTimeInterval:10 sinceDate:[NSDate date]];

这行代码使您的本地通知在新日期创建后触发。如果您想要立即收到通知,那么您应该像这样创建一个简单的日期,

notif.fireDate = [NSDate date];

希望这可以帮助。

于 2014-01-24T08:41:11.830 回答