構築中のアプリにローカル通知を実装しようとしています。私のコードのほとんどは、ドキュメントに書かれていることに従います
以下に私のコードを掲載します。私の現在の問題は、通知が表示されないことです。アプリを初めてロードしたときに許可画面が表示され、「許可」と言った
didFinishLaunchingWithOptions メソッドの AppDelegate で
didFinishLaunchingWithOptions
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center requestAuthorizationWithOptions:UNAuthorizationOptionAlert completionHandler:^(BOOL granted, NSError * _Nullable error) {
[self setupNotification];
}];
以下はAppDelegateにもあります
-(void)setupNotification {
UNMutableNotificationContent *content = [[UNMutableNotificationContent alloc] init];
content.title = [NSString localizedUserNotificationStringForKey:@"New:" arguments:nil];
content.body = [NSString localizedUserNotificationStringForKey:@"New Notification"
arguments:nil];
content.sound = [UNNotificationSound defaultSound];
UNTimeIntervalNotificationTrigger *trigger = [UNTimeIntervalNotificationTrigger
triggerWithTimeInterval:5
repeats:NO];
UNNotificationRequest *request = [UNNotificationRequest requestWithIdentifier:@"NOTIFICATION"
content:content
trigger:trigger];
UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter];
[center addNotificationRequest:request withCompletionHandler:^(NSError * _Nullable error) {
if (!error) {
NSLog(@"success");
}
}];
}
前に言ったように、通知が表示されず、その理由がわかりません。コンテンツ、トリガー、およびリクエストを設定してから、UNUserNotificationCenter にリクエストを追加します。
誰かがこれの実例を持っているか、どこが間違っているのか教えてもらえますか?
ここで同様の回答を見つけましたが、この回答は機能しない理由に対処してUNTimeIntervalNotificationTrigger
おらず、代わりにUNCalendarNotificationTrigger
ありがとう