Я хочу кнопки действия при получении уведомления. Для обработки удаленного уведомления толчка, я добавил следующий код -Расписание UILocalNotification
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UIApplication *application = [UIApplication sharedApplication];
if(SYSTEM_VERSION_LESS_THAN(@"10.0")) {
UIMutableUserNotificationAction *action1 = [[UIMutableUserNotificationAction alloc] init];
[action1 setActivationMode:UIUserNotificationActivationModeForeground];
[action1 setTitle:@"action1Text"];
[action1 setIdentifier:@"action1id"];
[action1 setDestructive:NO];
[action1 setAuthenticationRequired:NO];
UIMutableUserNotificationCategory *actionCategory = [[UIMutableUserNotificationCategory alloc] init];
[actionCategory setIdentifier:kMTNRemindLaterCategory];
[actionCategory setActions:@[action1]
forContext:UIUserNotificationActionContextDefault];
NSSet *categories = [NSSet setWithObject:actionCategory];
UIUserNotificationType types = (UIUserNotificationTypeAlert|
UIUserNotificationTypeSound|
UIUserNotificationTypeBadge);
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:types categories:categories];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
}
}
Он прекрасно работает. Я могу видеть кнопку и обрабатывать действие. Теперь, щелкнув по кнопке и на основе некоторой логики, я хочу запланировать локальное уведомление с помощью той же кнопки действия, как определено выше. Я добавил код (НЕ в AppDelegate файле):
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:10];
UILocalNotification *localNotification = [[UILocalNotification alloc] init];
localNotification.fireDate = date;
localNotification.timeZone = [NSTimeZone defaultTimeZone];
localNotification.alertBody = @"title 4";
localNotification.hasAction = YES;
localNotification.alertAction = @"action";
localNotification.soundName = UILocalNotificationDefaultSoundName;
localNotification.category = kRemindLaterCategory;
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];
Местное уведомление запланировано, и я получаю уведомление. Но я не вижу никакой действующей кнопки.
Я читал яблоко документации, где
- (void) application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification;
кажется полезным. Но это срабатывает при нажатии на уведомление. Другие должности я говорил: https://www.shinobicontrols.com/blog/ios8-day-by-day-day-25-notification-actions actions and categories don't show in UILocalNotification in iOS How can I add action buttons/actions to UILocalNotification alert?
Может кто-нибудь пожалуйста, мне точку в правильном направлении?
Ты лучший! Спасибо тонну: D –