有没有办法让iOS的本地推送通知在OSX上运行?我有一个程序,即使该程序已关闭,我也希望从本地计算机接收计划的通知。

最佳答案

这是本地通知

 - (void)scheduleNotificationWithItem:(ToDoItem *)item interval:(int)minutesBefore {

    NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar];

    NSDateComponents *dateComps = [[NSDateComponents alloc] init];

    [dateComps setDay:item.day];

    [dateComps setMonth:item.month];

    [dateComps setYear:item.year];

    [dateComps setHour:item.hour];

    [dateComps setMinute:item.minute];

    NSDate *itemDate = [calendar dateFromComponents:dateComps];

    [dateComps release];



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

    if (localNotif == nil)

        return;

    localNotif.fireDate = [itemDate addTimeInterval:-(minutesBefore*60)];

    localNotif.timeZone = [NSTimeZone defaultTimeZone];



    localNotif.alertBody =@"Local Notification";

    localNotif.alertAction = NSLocalizedString(@"View Details", nil);



    localNotif.soundName = UILocalNotificationDefaultSoundName;

    localNotif.applicationIconBadgeNumber = 1;



    NSDictionary *infoDict = [NSDictionary dictionaryWithObject:item.eventName forKey:ToDoItemKey];

    localNotif.userInfo = infoDict;



    [[UIApplication sharedApplication] scheduleLocalNotification:localNotif];

    [localNotif release];

}

07-24 13:10