나는 알림을 예약하고 경고 메시지를 표시해야합니다 전에 경고 60분에게 그것을 제공 ...UILocalNotification 일정 경고
내가 알림을 추가 자마자 내 앱 위임의 방법이라고:
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
알림이 백그라운드에서 경고로 표시된다는 것을 어떻게 알 수 있습니까? 내가 무시하거나 그 60 분 간격으로 예약 된 경고가 주어 확인하기 위해 사용해야하는 다른 위임 방법은 ... 거기에
- (void)scheduleNotificationWithItem:(NSDate *)item interval:(int)minutesBefore
{
NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComps = [[NSDateComponents alloc] init];
//NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *currentDateComponents = [calendar components:(NSWeekdayCalendarUnit |
NSYearCalendarUnit | NSMonthCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSWeekCalendarUnit | NSMinuteCalendarUnit) fromDate:item];
NSLog(@"- current components year = %i , month = %i , week = % i, weekday = %i", [currentDateComponents year], [currentDateComponents month], [currentDateComponents week], [currentDateComponents weekday]);
NSLog(@"[currentDateComponents minute]: %i", [currentDateComponents minute]);
NSLog(@"[currentDateComponents hour]: %i", [currentDateComponents hour]);
NSLog(@"[currentDateComponents day]: %i", [currentDateComponents day]);
NSLog(@"[currentDateComponents week]: %i", [currentDateComponents week]);
NSLog(@"[currentDateComponents month]: %i", [currentDateComponents month]);
NSLog(@"[currentDateComponents year]: %i", [currentDateComponents year]);
[dateComps setDay: [currentDateComponents day]];
[dateComps setMonth:[currentDateComponents month]];
[dateComps setYear:[currentDateComponents year]];
[dateComps setHour:[currentDateComponents hour]];
[dateComps setMinute:[currentDateComponents 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 = [NSString stringWithFormat:@"%@\n%@",
streetAddress,
stringOfWhenAuctionIsOn];
localNotif.alertAction = NSLocalizedString(@"View Details", nil);
localNotif.soundName = UILocalNotificationDefaultSoundName;
localNotif.applicationIconBadgeNumber = 1;
NSDictionary *infoDict = [NSDictionary dictionaryWithObject:streetAddress
forKey:idOfStreetAlert];
localNotif.userInfo = infoDict;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotif];
그냥 궁금 해서요, 간격을 음수로 설정하는 이유는 무엇입니까? \ –