基本的なアラーム機能を備えたアプリがあります。私の applicationWillResignActive: メソッドでは、アラームを鳴らす通知を作成するように設定しています。これは非常にうまく機能し、これが適切な方法だと思います (より良い方法があると思われる場合はお知らせください)。
特定の状況でのみ、iOS 6 のみで、アプリケーションが「終了」していない (ホーム ボタンが押されていない) 場合にのみ、ユーザーが単に電話をロックするか、電話が自動ロックされると、通知はオフになりません。
私はコードをたどりましたが、通知は実際に作成されており、iOS 5 で完全に機能しました。
これが私のコードです:
- (void)applicationWillResignActive:(UIApplication *)application
{
[UIApplication sharedApplication].idleTimerDisabled = NO;
[alarm setupForBackground];
if ([alarm isRunning]) {
[alarm stop];
}
}
通知の作成方法は次のとおりです。
- (void)setupForBackground
{
UILocalNotification* alarmNotification = [[UILocalNotification alloc] init];
if (alarmNotification) {
alarmNotification.fireDate = alarmDate;
alarmNotification.timeZone = [NSTimeZone defaultTimeZone];
alarmNotification.repeatInterval = 0;
alarmNotification.soundName = @"NotificationSound.aif";
[[UIApplication sharedApplication] scheduleLocalNotification:alarmNotification];
}
}
しばらく答えを探していましたが、通知の変更について何かを述べているものは見つかりませんでした。助けてくれてありがとう。