推送通知更改 AppIcon 的徽章

Push Notification Changing Badge of AppIcon

我正在开发一个可以接收 Push-Notifications 的应用程序。 收到通知后,我需要更改图标徽章的数量并增加它。 这些通知存储在我的应用程序的 UITableView 中。 当按下一行时,这意味着通知已被读取,所以我想减少徽章。 我是推送通知和徽章的新手,我真的找不到任何有效的方法来做到这一点

有什么解决办法吗?

谢谢。

您无法自动增加通知中的徽章。您的通知负载必须包含 badge 属性,它将被设置为您想要的徽章 确切值
要在您的应用中设置徽章值,您可以使用:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:someInteger];

如果您想在每次收到通知时将徽章递增 1,则需要在服务器端跟踪用户的徽章。
例如,如果您向用户发送 3 条通知,您的数据库中将有一个 badge 列用于该用户,其值为 3。如果用户打开他的应用程序并点击其中一个通知,您的应用程序必须将徽章图标设置为 2 并向您的服务器发送请求以将数据库值减少到 2。

TL;DR: 通知的负载中没有 badge:+1badge:autoincrement 这样的东西。您必须在服务器端跟踪徽章的价值。