在应用程序中接收通知时PFInstallation不是最新的

时间:2015-12-23 17:49:08

标签: ios swift parse-platform push-notification

所以我正在尝试进行自定义通知管理,如果应用程序在后台,一切正常,但如果用户在应用程序中收到通知,则当前安装似乎不会更新以反映什么是解析,我尝试了抓取,似乎没有更新只返回局部变量的数据。

    let installation = PFInstallation.currentInstallation()

    installation.fetchInBackgroundWithBlock({ (object, error) -> Void in
    if let fetchedInstallation = object as? PFInstallation{
        print("fetched badge \(fetchedInstallation.badge)")
        print("local \(installation.badge)")
        // make sure app badge is updated to reflect total
    }

这是在appdelegate中收到远程通知。 print语句从应用程序启动时开始打印本地徽章编号,除非在后台进行通知,然后安装更新。

示例:如果应用程序已打开且PFInstallation徽章位于7,则它将保持为7,直到应用程序不在前台时收到通知。我可以随时启动应用程序,但只要应用程序在拦截通知时运行,安装就不会更新。然后当应用程序终止或在后台发出通知时,安装将更新为解析时存储的当前数据。

所以问题是我如何确保正确更新PFInstallation以反映应用程序在前台时解析的内容。

1 个答案:

答案 0 :(得分:0)

如果您具体指的是iOS徽章编号,您是否尝试在前台收到通知时直接设置徽章值?如果您使用的是handlePush:,它可能会自动为您处理。