推送通知更改应用程序图标徽章

3
我正在开发一款可以接收推送通知的应用程序。当收到通知时,我需要更改图标徽章上的数字并将其递增。这些通知存储在我的应用程序中的UITableView中。当按下一行时,这意味着已读取通知,因此我希望减少徽章。我对推送通知和徽章不太熟悉,真的找不到有效的方法来完成它。
有什么解决方案吗?
谢谢。
1个回答

9

你不能从通知中自动增加徽章。你的通知负载必须包含badge属性,该属性将设置为你想要的徽章的确切值
要从应用程序内设置徽章值,您可以使用:

[[UIApplication sharedApplication] setApplicationIconBadgeNumber:someInteger];

如果您想每次收到通知时将标记增加一,需要在服务器端跟踪用户的标记。
例如,如果向某个用户发送3个通知,则应在该用户的数据库中有一个名为badge的列,其值为3。 如果用户打开应用程序并点击其中一个通知,则应用程序必须将标记图标设置为2并向服务器发送请求以将数据库值减少到2。
简而言之,通知负载中没有badge:+1badge:autoincrement这样的东西。 您必须在服务器端跟踪徽章的值。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接