如何通过Notification Service Extension访问应用的徽章计数

时间:2018-10-11 13:21:08

标签: ios push-notification ios-extensions

我希望在应用程序收到任何推送通知时增加应用程序的徽章计数,即使该应用程序退出也是如此。徽章计数不在服务器端维护。因此,我需要在收到每个推送通知时将应用程序徽章计数增加1。 当应用程序处于退出状态时,修改推送通知有效负载的唯一方法是Notification Service Extension,但是我们无法从扩展程序访问UIApplication实例来获取应用程序的当前徽章计数。

有什么方法可以从通知扩展中获取应用徽章计数

或还有其他方法可以实现这一目标吗?

请帮助我。谢谢!

2 个答案:

答案 0 :(得分:1)

没有使您能够这样做的api,但是您可以通过观察应用内部用户默认密钥的更改来解决该问题(您将在扩展内使用访问组套件默认设置该密钥)并将徽章更改为您需要

答案 1 :(得分:0)

您可以通过设置给定请求的徽章属性来从通知服务扩展中设置应用徽章...

bestAttemptContent = (request.content.mutableCopy() as? UNMutableNotificationContent)
bestAttemptContent = <current value +1>

如果无法计算当前值,则可以将其存储在UserDefaults中

相关问题