私はアラームアプリケーションを開発しています。アプリケーションで NSTimer を使用しています。タイマーは問題なく動作します。しかし、アプリケーションを最小化すると、タイマーが機能しなくなります。アプリケーションが閉じられているか最小化されているときにそれを機能させるにはどうすればよいですか?
これが私のコードです
- (void) alarmSaveButtonAction:(id)sender {
timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self
selector:@selector(onTimerEvent)
userInfo:nil repeats:YES];
}
-(void)onTimerEvent
{
NSLog(@"saravanan");
NSDate *now = [NSDate new];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"hh:mm:ss a";
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
NSLog(@"The Current Time is %@",[dateFormatter stringFromDate:now]);
NSString *string2 = [NSString stringWithFormat:[dateFormatter stringFromDate:now]];
NSLog(@"currenttime %@", string2);
[dateFormatter release];
Resource *resourceLoader = [[Resource alloc] init];
NSDictionary *prefDic = [resourceLoader getPlistDataAsDictionary:@"preference"];
NSDate *selectedDateTime = [[NSDate alloc]init];
selectedDateTime = [prefDic objectForKey:@"alarmtime"];
NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
dateFormatter1.dateFormat = @"hh:mm:ss a";
[dateFormatter1 setTimeZone:[NSTimeZone systemTimeZone]];
NSLog(@"saravanan date %@",[dateFormatter1 stringFromDate:selectedDateTime]);
NSString *string1 = [NSString stringWithFormat:[dateFormatter1 stringFromDate:selectedDateTime]];
NSLog(@"currenttime %@", string1);
[dateFormatter1 release];
if ([string1 isEqualToString:string2])
{
NSLog(@"alarm scheduld");
[self scheduledNotification];
[timer invalidate];
timer = nil;
}
}
前もって感謝します。