所以我正在尝试进行自定义通知管理,如果应用程序在后台,一切正常,但如果用户在应用程序中收到通知,则当前安装似乎不会更新以反映什么是解析,我尝试了抓取,似乎没有更新只返回局部变量的数据。
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以反映应用程序在前台时解析的内容。
答案 0 :(得分:0)
如果您具体指的是iOS徽章编号,您是否尝试在前台收到通知时直接设置徽章值?如果您使用的是handlePush:,它可能会自动为您处理。