重置图标徽章的计数

时间:2015-12-15 12:19:51

标签: ios swift parse-platform push-notification apple-push-notifications

我使用Parse.com发送推送。当我发送推送时,我将增量徽章设置为“是”,这样用户就可以在我的应用图标上看到带有“1”的徽章。

当用户打开应用程序的主ViewController时,app会使用此代码清除徽章计数

UIApplication.sharedApplication().applicationIconBadgeNumber = 0

此工作正常,徽章清晰。但是当我发送带有徽章增量的新推送时 - 我看到徽章上的号码是2.我重置徽章计数的方法有问题吗?

1 个答案:

答案 0 :(得分:3)

这是因为当您删除本地徽章时,该设备的Parse Installation类中的徽章计数保持不变。您可以执行以下操作来删除它:

假设您已确定当前用户具有PFInstallation(即他没有拒绝推送通知访问请求),要重置后端的徽章编号,您可以使用以下内容:

var currentInstallation = PFInstallation.currentInstallation()
      if currentInstallation.badge != 0 {
        currentInstallation.badge = 0
        currentInstallation.save
       }

只有当徽章当前显示非零计数器时,才能确保将徽章设置为0。

currentInstallation上设置徽章也会自动设置applicationIconBadgeNumber。通过这样做,Parse将知道您的应用当前显示的数字,并且只要再次向此设备发送增量,他们就可以正确递增计数器。有关详细信息,请参阅此问题Official Parse Blog Announcement