在锁定屏幕上捕获推送通知文本

时间:2015-04-23 05:49:43

标签: ios swift push-notification

如何在应用未运行或处于锁定屏幕时获取推送通知文本?

我确实尝试过:

func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject], fetchCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) {
    println(userInfo)
    // or just
    println("something")
}

但它没有打印任何东西。这是错误的功能???

1 个答案:

答案 0 :(得分:1)

didReceiveRemoteNotification 函数仅调用此条件。

  1. 当应用程序将运行并且应用程序处于前台时(警报未显示)
  2. 如果app在后台并点击主屏幕上的通知
  3. 如果app未在设备 didReceiveRemoteNotification 中运行,则不会调用 在这种情况下,主屏幕中的用户点击通知,我们通过 didFinishLaunchingWithOptions

    确定通知是否启动的应用
    UILocalNotification *localNotif =[launchOptions objectForKey: UIApplicationLaunchOptionsRemoteNotificationKey];
    

    您在localNotif.userinfo

    中获得了userinfo数据

    尝试使用Swift

     func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
     var userinfo : NSDictionary =launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey];
            print(launchOptions);
            return true
        }