Ios 当应用程序被终止时,如何确定是从NotificationCenter(本地通知)还是从应用程序图标打开应用程序
我的应用程序接收本地通知,而不是远程通知。当应用程序被关闭(不在后台或前台运行)时,我如何知道是否通过按通知而不是应用程序图标打开了应用程序。以前,我使用了以下方法Ios 当应用程序被终止时,如何确定是从NotificationCenter(本地通知)还是从应用程序图标打开应用程序,ios,swift,notifications,nsnotificationcenter,Ios,Swift,Notifications,Nsnotificationcenter,我的应用程序接收本地通知,而不是远程通知。当应用程序被关闭(不在后台或前台运行)时,我如何知道是否通过按通知而不是应用程序图标打开了应用程序。以前,我使用了以下方法 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { if ((launchOption
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
if ((launchOptions?[UIApplication.LaunchOptionsKey.loaclNotification] != nil))
{
print("here")
}
}
但是,从iOS 10开始,此功能已被弃用
[UIApplication.LaunchOptionsKey.loaclNotification] != nil)
苹果的文档建议使用以下方法
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
}
仅当应用程序位于前台或后台时,才会调用此方法。任何帮助都将不胜感激
我如何通过按通知而不是应用图标来知道应用是否已打开
正如您所说,实现UNUserNotificationCenterDelegate方法didReceive
。如果用户点击了你的通知,它将被调用,并在你的应用程序未运行时启动