Ios 如果应用程序处于终止/强制关闭(非后台)状态,则在收到推送通知时将调用哪个委托方法?

Ios 如果应用程序处于终止/强制关闭(非后台)状态,则在收到推送通知时将调用哪个委托方法?,ios,objective-c,notifications,Ios,Objective C,Notifications,我目前正在从事一个项目,该项目需要在收到通知时将pushnotification详细信息存储在本地存储中 到目前为止,当应用程序处于前台和后台时,我可以接收并存储推送通知 但是当应用程序被强制关闭时,我无法存储通知,因为在收到通知时,我在代码中没有得到任何触发器, 如果单击通知面板中的通知,则我将在代码中获得触发器 我希望和方法是,即使应用程序处于已终止状态,我也可以保存通知而不触碰收到的通知。当应用程序被终止时,您将永远无法获得任何有关APN的信息 现在,您将如何获得有关应用程序被终止时通知的

我目前正在从事一个项目,该项目需要在收到通知时将pushnotification详细信息存储在本地存储中

到目前为止,当应用程序处于前台和后台时,我可以接收并存储推送通知

但是当应用程序被强制关闭时,我无法存储通知,因为在收到通知时,我在代码中没有得到任何触发器, 如果单击通知面板中的通知,则我将在代码中获得触发器


我希望和方法是,即使应用程序处于已终止状态,我也可以保存通知而不触碰收到的通知。

当应用程序被终止时,您将永远无法获得任何有关APN的信息

现在,您将如何获得有关应用程序被终止时通知的详细信息,然后打开应用程序。我有同样的问题,这是我的解决方案,我已经申请解决它

我们创建了一个名为Notification detail的表

当服务器同时触发推送通知时,我们将其保存在上表中。当应用程序启动时,我们通过使用的id获取所有通知

我们还保存最后一个通知id以管理徽章计数

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
   //Check here launchOptions.
    return YES;
}
如果应用程序被强制关闭,当您单击通知警报时,将调用此方法。
检查
启动选项
。如果lauchOptions不是nil,则会出现通知,并相应地处理通知。您可以从
launchOptions
获取
userInfo
userInfo
包含推送通知的所有信息。

通过设置以下配置,您可以在应用程序未运行时接收推送通知

  • 在应用程序的设置中,选择目标>选择功能>打开后台模式并选中远程通知复选框
  • 在推送通知负载中,包括
    “内容可用:true”
  • 现在,当您收到带有
    “content available:true”
    的推送消息后,iOS将在后台模式下自动启动您的应用程序。所以你可以用下面的方法保存你的更新

    -(void)application:(UIApplication*)application-didReceiveMemotentification:(NSDictionary*)userInfo-fetchCompletionHandler:(void(^)(UIBackgroundFetchResult))completionHandler

    请参阅此以了解苹果的更多信息。也请参考这一点


    谢谢

    -(void)application:(UIApplication*)application didReceiveMemotentification:(NSDictionary*)userInfo fetchCompletionHandler:(void(^)(UIBackgroundFetchResult))completionHandler
    您可以通过在
    Appdelegate
    中的此方法中显示UIAlertview来确认这一点,感谢您的回复,但当应用程序处于后台时,会调用此功能,但如果应用程序是强制的,则不会执行closed@jaffer不会调用任何方法。我希望和方法是,即使应用程序处于终止状态,我也可以保存通知,而不必触摸收到的通知。@jaffer您必须将通知信息管理到本地数据库中。您的答案与问题无关提问者未在后台明确提及,但您的答案与后台模式相关。您可以修改答案,但不可能得到真实答案。但问题与此答案相关,因为他希望在应用程序关闭/关闭时收到推送消息。因此,这将是实现其要求的方法。不,my bro,completionHandler仅用于挂起模式,不用于运行模式,不用于终止模式bro@Natarajan如果您在文档中对此进行说明,请将此键的值设置为1,以指示新内容可用。包含此键和值意味着当应用程序在后台启动或恢复时,将调用application:DidReceiveMemoteNotify:fetchCompletionHandler:。这将适用于应用程序后台,而不适用于killed States,但如何将其保存在表中?