質問

I want to send local notification every minute and this is code that I'm using:

[[UIApplication sharedApplication] cancelAllLocalNotifications];

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

    if (notif == nil) {
        return;
    }

    notif.timeZone = [NSTimeZone defaultTimeZone];

    notif.alertBody = @"Test notification!";
    notif.alertAction = @"View";
    notif.soundName = UILocalNotificationDefaultSoundName;
    notif.applicationIconBadgeNumber += 1;

    notif.repeatInterval = NSMinuteCalendarUnit;

    [[UIApplication sharedApplication] scheduleLocalNotification:notif];

The notification starts only once and never is repeated. Where I make mistakte?

役に立ちましたか?

解決

You have to set a fireDate for your notification, otherwise it won't repeat but fire instantly.

The fire date is interpreted according to the value specified for timeZone. If the specified value is nil or is a date in the past, the notification is delivered immediately.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top