iphoneアプリ開発初心者です。
私の質問は、アプリがバックグラウンドで実行されているときにポップアップ (UIAlertView) を表示するにはどうすればよいですか? iOS 6 に xcode 4.2 を使用していますが、インターネットで満足のいく答えが見つかりません。誰かがこれで私を助けてくれますか?
- (void)applicationDidEnterBackground:(UIApplication *)application
{
UIApplication* app = [UIApplication sharedApplication];
bgTask = [app beginBackgroundTaskWithExpirationHandler:^{
[app endBackgroundTask:bgTask];
bgTask = UIBackgroundTaskInvalid;
}];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSTimer* t = [NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(doBackgroundProcessing) userInfo:nil repeats:YES];
[[NSRunLoop currentRunLoop] addTimer:t forMode:NSDefaultRunLoopMode];
[[NSRunLoop currentRunLoop] run];
});
}
- (void) doBackgroundProcessing
{
global = [lMGlobal getInstance];
while(TRUE)
{
[self showAlertFor:@"Hello" andMessage:@"Wake up"];
[NSThread sleepUntilDate:[lMGlobal getSleepDuration]];
}
}
- (void) showAlertFor:(NSString *)title andMessage:(NSString*)message
{
UIAlertView *alertDialog;
alertDialog = [[UIAlertView alloc]
initWithTitle:title
message:message
delegate: self
cancelButtonTitle: nil
otherButtonTitles: @"Mute", nil];
[alertDialog
performSelector:@selector(show)
onThread:[NSThread mainThread]
withObject:nil
waitUntilDone:NO];
[alertDialog release];
}