Ios 在应用程序未运行时接收推送通知时执行代码
我正在使用提醒应用程序。该应用程序将在用户设置的特定时间显示通知。我已使用本地通知显示提醒Ios 在应用程序未运行时接收推送通知时执行代码,ios,swift,apple-push-notifications,uilocalnotification,Ios,Swift,Apple Push Notifications,Uilocalnotification,我正在使用提醒应用程序。该应用程序将在用户设置的特定时间显示通知。我已使用本地通知显示提醒 问题是,当它收到本地通知时,我想运行一些代码,即使用户没有点击通知。在swift中有什么方法可以做到这一点吗?我认为您应该在AppDelegate.swift中添加方法应用程序(\uApplication:UIApplication,didReceive notification:UILocalNotification)。您想要实现的代码应该在那里。即使用户没有点击通知,代码也将被执行。但无论如何,应用程
问题是,当它收到本地通知时,我想运行一些代码,即使用户没有点击通知。在swift中有什么方法可以做到这一点吗?我认为您应该在AppDelegate.swift中添加方法
应用程序(\uApplication:UIApplication,didReceive notification:UILocalNotification)
。您想要实现的代码应该在那里。即使用户没有点击通知,代码也将被执行。但无论如何,应用程序应该正在运行。
以下是苹果文档的摘录:
如果
发出通知时,应用程序在前台不活动,
系统使用UILocalNotification对象中的信息
确定是否应显示警报、标记应用程序图标或
播放声音。如果应用程序在前台运行,则系统
直接调用此方法,而不以任何方式通知用户
如果愿意,可以在委托中实现此方法
通知发生了本地通知。例如,日历
应用程序可能会使用本地通知提醒用户即将发生的事件
事件
如果用户选择在发生本地通知时打开应用程序,
已将启动选项字典传递给
应用程序(:willFinishLaunchingWithOptions:)和
应用程序(:didFinishLaunchingWithOptions:)方法包含
本地通知键。此方法在您的
委托的应用程序(uu3;:didFinishLaunchingWithOptions:)方法
这是正确的答案。正如@grigory konovalov在这里指出的那样,如果你的应用程序在后台,你就不能启动逻辑。如果你的应用程序是后台的,他们必须点击通知,你的逻辑才会出现。感谢回复。有什么方法可以让应用程序保持在后台吗??我需要在用户收到通知时配置下一个通知。您说“在用户收到通知时配置下一个通知”是什么意思?当应用程序处于后台并且收到通知时,有两种可能。第一个单用户忽略通知和第二个单用户点击通知打开应用程序。在任何情况下,应用程序委托中的通知处理程序都将在应用程序打开之前启动。此外,不要忘记ViewWillAppearch方法-您可以根据此方法中的应用程序逻辑执行某些操作。我建议您熟悉@GrigoryKonovalov。我需要做的是,如果用户忽略通知,我需要配置另一个通知以再次显示提醒。我可以这样做吗?