【问题标题】:UILocalNotification - How to discover whether user action came from notification center?UILocalNotification - 如何发现用户操作是否来自通知中心?
【发布时间】:2013-01-17 17:17:21
【问题描述】:

在执行通知时调用的方法中:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification

有没有办法发现通知是来自用户点击通知中心的警报,还是在应用运行时收到警报?

原因是:我想在用户点击警报时将其引导至特定页面。如果用户在应用程序内时发出警报(因此,他们没有在通知中心点击警报),则会调用上述方法,并且我不想将他们踢到另一个屏幕。

但是,如果应用程序正在运行或在后台运行,并且他们已拉下通知中心,我确实希望将它们带到特定屏幕并在这些情况下调用相同的方法。

【问题讨论】:

    标签: iphone ios objective-c ios6 uilocalnotification


    【解决方案1】:

    很遗憾,您不能完全按照自己的意愿去做。你能来的最接近的是

    - (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
    {
        if (application.applicationState == UIApplicationStateActive)
            // They didn't come from the notification area
        else
            // They did
    }
    

    很遗憾,在接收警报时没有提供上下文信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多