当使用新的通知机制点击本地通知时,如何打开应用程序?
Posted
技术标签:
【中文标题】当使用新的通知机制点击本地通知时,如何打开应用程序?【英文标题】:How do I open the app when local notification is tapped with the new notification mechanisms? 【发布时间】:2017-01-12 07:40:16 【问题描述】:application:didReceiveLocalNotification:
从 ios10 开始被弃用,developer page 没有指向任何替代方案。
UNNotificationRequest* request = [UNNotificationRequest requestWithIdentifier:@"localnotification"
content:content
trigger:trigger];
UNUserNotificationCenter* notificationCenter = [UNUserNotificationCenter currentNotificationCenter];
[notificationCenter requestAuthorizationWithOptions:(UNAuthorizationOptionBadge | UNAuthorizationOptionSound | UNAuthorizationOptionAlert)
completionHandler:^(BOOL granted, NSError * _Nullable error)
if (!error)
NSLog(@"request authorization succeeded!");
];
[notificationCenter addNotificationRequest:request
withCompletionHandler:nil];
我已经创建了一个如上所示的通知,其中包含适当的内容和触发器。现在我希望应用程序在我点击通知时打开,但我似乎无法弄清楚如何。
【问题讨论】:
UILocalNotification is deprecated in iOS10的可能重复 How can I mute the capture sound in AVFoundation?的可能重复 根据要求,我已将我的问题编辑得更具体。重复的可能性不能回答我的问题。 【参考方案1】:userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler:
如果要执行自定义操作,则需要实现 UNUserNotificationCenterDelegate
中的此方法。
- (void)userNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler
if ([response.actionIdentifier isEqualToString:UNNotificationDefaultActionIdentifier])
NSLog(@"app opened");
【讨论】:
以上是关于当使用新的通知机制点击本地通知时,如何打开应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
当用户点击 Flutter App 中的 Firebase 通知时如何打开链接?