我正在使用带有swift 2.3的iOS 10我需要在收到来自firebase的新通知时增加徽章数量。我有代码来增加徽章数量 p>
let badgeCount: Int = BadgeCount + 1
UIApplication.sharedApplication().applicationIconBadgeNumber = badgeCount
但我不知道在哪里使用它才能使其正常工作。
答案 0 :(得分:4)
SWIFT 4 (AppDelegate中)
func applicationDidBecomeActive(_ application: UIApplication) {
UIApplication.shared.applicationIconBadgeNumber = 0
}
答案 1 :(得分:2)
如果您使用推送通知,则无法保持应用中的计数。您需要编写此逻辑服务器端,因为除非用户点击它,否则您的应用程序将不会了解推送。 第二个选项是使用静默通知。无提示通知会传送到您的应用程序,然后您需要触发本地推送并维护徽章计数。 无声通知的缺点是,如果用户杀死您的应用,您将不会收到无声通知。
答案 2 :(得分:2)
如果您使用的是Firebase推送通知,我们只需启用iOS徽章并在发送前包含徽章计数。在AppDelegate.Swift
中,我们需要添加applicationDidBecomeActive
函数
UIApplication.sharedApplication().applicationIconBadgeNumber = 0
答案 3 :(得分:0)
如果您想清除徽章计数而不是删除通知,则可以使用
UIApplication.shared.applicationIconBadgeNumber = -1