我可以在OSX中使用iOS的本地推送通知吗?

时间:2012-07-15 09:01:14

标签: macos cocoa notifications scheduled-tasks

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

2 个答案:

答案 0 :(得分:0)

这是本地通知

 - (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];

}

答案 1 :(得分:-1)