在iOS上,我的应用程序如何获取手机在后台时收到的通知数据?

时间:2015-08-06 07:14:54

标签: ios swift

AppDelegate中是否有办法获取所有通知数据的队列? (一旦用户打开应用程序)。

4 个答案:

答案 0 :(得分:3)

根据苹果文档:

当远程通知到达时,系统会调用application:didReceiveRemoteNotification:fetchCompletionHandler:方法。通知通常表示新信息的可用性。在您的app delegate方法中,您可能会开始从服务器下载新数据,以便您可以更新应用程序的数据结构。您也可以使用该通知更新您的用户界面。

您必须启用remote notification background mode,否则您将获得上述方法的回调。

答案 1 :(得分:0)

Object a = ... Object b = ... a = b;

中试试这个
app delegate

答案 2 :(得分:0)

对于UILocalNotification,您可以通过在AppDelegate中调用以下函数来接收通知:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification {
UIApplicationState state = [application applicationState];
    if (state == UIApplicationStateInactive) {
    // Application was in the background when notification was delivered.
    } 
}

如果您想找到该应用已设置的本地通知列表,请检查此solution

答案 3 :(得分:0)

您可以检查launchOptions字典,查看收到的通知,当应用程序恢复点击通知时,

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.
  NSLog(@"Launch Options:%@",launchOptions);

  return YES;
}