iphone - 没有 aps badge 或 badge = 0 无法清理通知中心?

标签 iphone ios apple-push-notifications

我向用户推送了一个没有角标(Badge)键或角标(Badge) = 0 的通知负载,通知无法从通知中心删除。这是我的有效负载:

{
     "aps" : {"alert" : "bala bala"}
//or "aps" : {"alert" : "bala bala", "badge" : 0}
}

然后从 NC 打开应用程序,通知停留在 NC,无法删除。如果我在 ap 中将角标(Badge)值设置为大于 0,则通知将在应用启动后删除。

{
    "aps" : {"alert" : "bala bala", "badge" : 1}
}

已经在应用启动后设置了[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];

为什么没有 badge key 或 badge = 0 就不能删除通知?

谢谢。

最佳答案

我遇到了同样的问题。解决方案非常简单: 首先将角标(Badge)设置为 1,然后设置为 0。这应该会清除 NC 中的通知。

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:1];
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:0];
// Now the notification should be cleared out of the NC

关于iphone - 没有 aps badge 或 badge = 0 无法清理通知中心?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13268513/

相关文章:

objective-c - 如何将 TabBar + Navigation 与 XCode 结合起来

ios - 用日语开发应用程序,添加本地化到英语

ios - 使用 URL 启动应用程序,但未调用 OpenUrl

ios - 使用 UrbanAirship 库编译代码出现 "release not available"错误

ios - 为什么远程推送通知在 iOS 10 上不起作用?

ios4 - Iphone 4 sdk - 如何查明 applicationWillEnterForeground 是否因通知而触发?

iPhone支持后台运行应用程序吗?

iphone - XCode 4.3 无法加载持久存储 UserDictionary.sqlite

ios - 如何判断 zrotation 后 Sprite 的高度?

ios - swift : SLKTextViewController crashes after editing tableview numberOfSectionsInTableView